MvsSln 1.0.1
See the version list below for details.
dotnet add package MvsSln --version 1.0.1
NuGet\Install-Package MvsSln -Version 1.0.1
<PackageReference Include="MvsSln" Version="1.0.1" />
paket add MvsSln --version 1.0.1
#r "nuget: MvsSln, 1.0.1"
// Install MvsSln as a Cake Addin
#addin nuget:?package=MvsSln&version=1.0.1
// Install MvsSln as a Cake Tool
#tool nuget:?package=MvsSln&version=1.0.1
MvsSln provides logic for complex support of the Visual Studio .sln files and its projects (.vcxproj, .csproj., ...).
It was as a part of the https://github.com/3F/vsSolutionBuildEvent projects, but now it extracted into the new specially for [DllExport](https://github.com/3F/DllExport/issues/38) and for others.
_ _ _ _ _ _
Source code and all details here: https://github.com/3F/MvsSln
~~~~~~~~
Get it via GetNuTool:
==========================================
gnt /p:ngpackages="MvsSln/1.0.1"
==========================================
* https://github.com/3F/GetNuTool
Build info:
S_NUM: 1.0.1
S_REV: 43422
S_NUM_REV: 1.0.1.43422
bSha1: acc6957
bName: master
bRevc: 17
.NET version: v4.0
.NET stamp: 40
Configuration: PublicRelease
Platform: Any CPU
cfgname: Release
revDeltaBase: 2017/06/22
revDeltaMin: 1000
revDeltaMax: 65534
:: generated by a vsSolutionBuildEvent v0.12.10.10901
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net40 is compatible. net403 was computed. net45 was computed. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Public release of the MvsSln - v1.0.1
* FIXED: Fixed possible bug with already loaded project in collection when initializing new instance of Sln.
* FIXED: Fixed `IXProject.RemoveProperty(PropertyItem property)` & `IXProject.RemoveItem(Item item)` when selected items or properties does not exist.
* FIXED: Fixed possible exception when disposing object /IsolatedEnv.
* FIXED: Fixed possible NullReferenceException for IsolatedEnv + Improved layer of IXProject.
* NEW: Added `localScope` flag for `GetProperty(string name, bool localScope = true)`.
If true, will return default value for any special and imported properties type. It's important to use with `RemoveProperty(...)` etc.
* NEW: Added `SlnItems.LoadMinimalDefaultData` flag to load only minimal default data. For example, the only one configuration for each project.
And its alias `EnvWithMinimalProjects` - To prepare environment with minimal loaded projects.
* NEW: Added `IXProject.Reevaluate()` - To reevaluate data of project if necessary.
For example, if project contains 2 or more same properties by name:
After `RemoveProperty(...)` the second property still will be unavailable for `GetProperty(...)`
because its node does not contain this at all. Use this to update nodes, or `revalue` flag with updated `RemoveProperty(...)`
* NEW: Added `IXProject.RemoveImport(ImportElement element)` - For additional control of removing elements via IXProject.
* CHANGED: `IXProject.AddImport(...)` methods - now, does not have any restriction for adding new elements.
* CHANGED: `AssemblyName` from Projects.Item has been wrapped by `AsmData` for additional work with public key tokens etc.
* CHANGED: The result of `IXProject.GetImport(...)` has been wrapped by `ImportElement` to avoid using MBE for end user.
* CHANGED: Other list of changes:
* `+IXProject.ProjectPath`
* `+IXProject.ProjectFullPath`
* `+IXProject.GlobalProperties`
* `+IXProject.Save(string path, Encoding enc)`
* `+IXProject.GetImport(string project, string label, bool eq = false)`
* `+IXProject.GetImports(string project = null)`
* `+IXProject.GetImports(string project, string label, bool eq = false)`
* `+IXProject.AddReference(string fullpath, bool local, bool? embed = null, bool? spec = null)`
* `+IEnvironment.LoadMinimalProjects()`
* CHANGED: Compatible update of signatures:
* `~IXProject.AddImport(string target, bool checking, string label = null)`
* `~IXProject.AddImport(string target, string condition, string label = null)`
* `~IXProject.GetProperty(string name, bool localScope = true)`
* `~IXProject.RemoveProperty(string name, bool revalue = false)`
* `~IXProject.RemoveProperty(PropertyItem property, bool revalue = false)`
* `~IEnvironment.LoadProjects(IEnumerable<ProjectItemCfg> pItems = null)`
* CHANGED: Incompatible minor changes with result of `ProjectImportElement GetImport(string project = null)`.
It has been wrapped by `ImportElement` to avoid using MBE.