Giter VIP home page Giter VIP logo

bindinggenerator's Introduction

BindingGenerator

Generates assembly binding redirects for .net projects from their bin directories

Purpose

Trying to work out what assemblies need binding redirects is a huge pain, and working out what those versions should be is an even bigger one. NuGet versions don't match assembly versions and then you start hating life!

This application enumerates the dlls in a folder and generates the xml to configure binding redirects for everything it finds.

Usage

From the command line: BindingGenerator.Console [string to exclude]

  • input path is fairly obvious - where should it look for dlls
  • output path is where you want the xml written. This will overwrite any file that's there without asking so be careful.
  • string to exclude is an optional param that will exclude dlls that match a string. This isn't clever and doesn't take wildcards, it just removes the value from the output if it contains the string.

Example

In a folder containing the following

MyApp.Core.dll
MyApp.Main.dll
MyApp.exe
Microsoft.ApplicationInsights.dll
System.Memory.dll

BindingGenerator.Console c:\path\to\my\app\bin\Debug\net472 c:\binding-redirects.txt MyApp

would generate the follwing in c:\binding-redirects.txt

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.ApplicationInsights" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.11.0.0" newVersion="2.11.0.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
  </dependentAssembly>
</assemblyBinding>

bindinggenerator's People

Contributors

tcbroad avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.