我们有一个包含多个项目的解决方案,其中包括带有单元和规范测试的项目。当我们在解决方案上运行 dotnet pack 命令时,不会为单元和规范测试项目生成包。这是一件好事,它排除了测试项目。只是想了解 dotnet pack 命令如何不将项目排除在打包之外。
在实验中,我注意到当我在任何项目上添加对 xunit 和 xnit.runner.visualstudio 的项目依赖项时,dotnet pack 不会为该项目生成包。
dotnet pack C:\Projects\SysScore_Integration\SysScore\SysScore.sln --output C:\Projects\LocalNuGet\ /p:PackageVersion=1.0.1.8
我想为c#编译器创建自定义语句以生成try finally块.就像锁定声明一样.
例如
private readonly ReaderWriterLockSlim _lockObject
private void MyMethod()
{
MyWriteLock(lockObject)
{
}
}
private void MyMethod2()
{
MyReadLock(lockObject)
{
}
}
Run Code Online (Sandbox Code Playgroud)
编译器应该为我生成以下代码
private void MyMethod()
{
try
{
lockObject.EnterWriteLock();
.. statetments for the method
}
finally
{
_lockObject.ExitWriteLock();
}
}
private void MyMethod2()
{
try
{
lockObject.EnterReadLock();
.. statetments for the method
}
finally
{
_lockObject.ExitReadLock();
}
}
Run Code Online (Sandbox Code Playgroud)