Toronto, April 2016 Friedrich Brunzema MakeFriendAssembly2015 – Getting Started Guide.
IntroductionThe MakeFriendAssembly extension is designed to make it easier to establish friendship relationships between assemblies allowing access to internal types of the befriending assembly. CompatibilityTested on Visual Studio 2015 only for now. There is a separate 2013 version InstallationThere are three options to install the extension
Source codeSource code for the Extension lives on https://github.com/brunzefb/MakeFriendAssembly. Feel free to fork. You can also send me a pull request through github if you have bug fixes/enhancements. Support/FeedbackIf you find a bug, please add it to the issue tracker on github. https://github.com/brunzefb/MakeFriendAssembly. You also can email me at brunzefb@gmail.com, please put MakeFriendAssembly in the subject line. I will only respond if an issue has been created. The extension generates comprehensive logs info stored in C:\ProgramData\MakeFriendAssembly\MakeFriendAssembly.log, so please attach the log file to the issue along with what you were doing at the time. License / Disclaimer of Warranty / Limitations of LiabilitySoftware is provided under the Apache License 2.0 license. It says that there’s no warranty, and that you are getting this MakeFriendAssembly extension “as is”, and that the author is not responsible anything that goes wrong as a result of you installing this software. Version HistoryVersion 1.1 - April 2015 – Initial revision for VS2015
How do I know the install worked?The Extension adds one new menu item to the Visual Studio Tools menu:
Make Friend AssemblyIn order to use the “Make Friend Assembly”, you need to have a solution with at least two C# projects. Only C# is supported at this time. With a solution loaded, execute the command.
Select the project that is giving access to its internal types in the first combo box. The second listbox will then display the non-selected projects from the first listbox. Check the checkboxes of the assemblies you wish to give access to, and click OK. The modified AssemblyInfo.cs file is opened by the extension.
The AssemblyInfo.cs of the “giving” assembly is modified to add the InternalsVisibleTo() statement. The extension supports both “strong-named” and non-strong named friendships. Note: For things to work, your AssemblyInfo.cs files must be named “AssemblyInfo.cs”. There is no scanning/parsing of AssemblyInfo.cs files, new InternalsVisibleTo() statements are added regardless of existing InternalsVisibleTo() statements.
|