如果我只想显示小数,如果它不是整数,那么格式化小数的最佳方法是什么.
例如:
decimal amount = 1000M
decimal vat = 12.50M
Run Code Online (Sandbox Code Playgroud)
格式化时我想:
Amount: 1000 (not 1000.0000)
Vat: 12.5 (not 12.50)
Run Code Online (Sandbox Code Playgroud) 升级到VS 2010之后MSBUILD/p:RunCodeAnalysis = true无法按预期工作
msbuild solution.sln /p:RunCodeAnalysis=true
Run Code Online (Sandbox Code Playgroud)
为了获得更快的构建,我们删除了DEBUG构建的CODE_ANALYSIS常量.但这意味着在运行上面的msbuild命令时,它会默认为所有规则,而不是使用我们在项目属性页面上的"代码分析"选项卡中指定的规则集.
所以现在我需要构建一个发布模式来运行代码分析(它定义了CODE_ANALYSIS常量):
msbuild solution.sln /p:RunCodeAnalysis=true /p:Configuration=release
Run Code Online (Sandbox Code Playgroud)
然而,这意味着我们在开发机器上获得了一个版本.这在我们的设置中有一些副作用.
问题:如何从命令行指定rulset.我希望有类似的东西:
msbuild solution.sln /p:RunCodeAnalysis=true /p:foobar=rules.ruleset
Run Code Online (Sandbox Code Playgroud) 当您使用Visual Studio的代码分析(FxCop),并且想要抑制消息时,有3个选项.
在签入源代码管理时很难检查后者,并且很难概述所有禁用的违规行为.所以我们想使用选项2.
选项1和2的问题是每次违规都会得到一条抑制线.例如:
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "Company.Project.Namespace2")]
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "Company.Project.Namespace1")]
Run Code Online (Sandbox Code Playgroud)
我们很乐意在GlobalSuppressions.cs上做这样的事情:
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes")]
Run Code Online (Sandbox Code Playgroud)
但这可能吗?
我是ReSharpers"清理代码"功能的忠实粉丝.特别是解决方案广泛清理.
但我使用Visual Studio的Ctrl+ K+ D(格式文档),它格式化的代码与ReSharper略有不同.
我正在寻求将ReSharper与Visual Studio对齐(而不是另一种方式......因为您无法在解决方案/源代码控制系统中共享Visual Studio设置).
所以我是这样的:
<Configuration>
<CodeStyleSettings>
<Sharing>SOLUTION</Sharing>
<CSharp>
<FormatSettings>
<SPACE_AROUND_MULTIPLICATIVE_OP>True</SPACE_AROUND_MULTIPLICATIVE_OP>
<SPACE_BEFORE_TYPEOF_PARENTHESES>False</SPACE_BEFORE_TYPEOF_PARENTHESES>
</FormatSettings>
</CSharp>
</CodeStyleSettings>
</Configuration>
Run Code Online (Sandbox Code Playgroud)
哪些其他设置将帮助ReSharper格式化代码,如Visual Studio?
当我进行两次相同的查询时,第二次它不会从数据库返回新行(我猜它只是使用缓存).
这是一个Windows窗体应用程序,我在应用程序启动时创建dataContext.
如何强制Linq SQL不使用缓存?
这是一个示例函数,我遇到了问题:
public IEnumerable<Orders> NewOrders()
{
return from order in dataContext.Orders
where order.Status == 1
select order;
}
Run Code Online (Sandbox Code Playgroud) 在我们的TFS源代码控制服务器上,许多源文件由人员检出,不再使用.
是否有一种中心方式可以撤消TFS中所有文件的检出?
我甚至不确定它们是否存在于Active Directory中.
我正在尝试遵循Roy Osherove的UnitTests命名约定,使用命名模板:[MethodName_StateUnderTest_ExpectedBehavior].
遵循这种模式.你如何命名一个调用构造函数的测试?
[Test]
public void ????()
{
var product = new Product();
Assert.That(product, Is.Not.Null);
}
Run Code Online (Sandbox Code Playgroud) 我有一个Azure表存储的解决方案,每个客户(分区键)最多有几个tusands"行".
我如何才能最好地进行快速自由文本搜索?
由于数据的性质,我无法进行漏洞搜索(例如搜索"zur"应该匹配"Azure").
我们有一个包含15个项目的解决方案,所有项目都启用了代码分析.
该解决方案很容易建立60秒,这是一个很长的时间坐等.
如果我禁用代码分析,它会构建10个sesonds.
我希望能够在临时基础上禁用代码分析.但是我仍然希望在签入之前构建时进行代码分析,并且我希望我们的构建服务器(Cruise Control)能够在启用代码分析的情况下继续运行.
我更喜欢如果代码分析是从Visual Studio中运行的,所以如果我收到错误/警告,我可以直接跳转到源代码.
我有一个LINQ表达式,可以按分区对Azure表存储中的客户进行分组.
由于Azure仅支持一次最多100个实体的批处理操作(并且批处理中的实体具有相同的PartitionKey),因此我需要每个组包含最多100个实体.
//How to complete this LINQ expression
var groups = customers.GroupBy(c => c.PartitionKey)....;
//Do some Azure table storage magic in parallel
Parallel.ForEach(groups , customersInGroup => {...});
Run Code Online (Sandbox Code Playgroud)
如何完成LINQ表达式,因此每组最多包含100个客户?那就是...如果客户收集,例如.有142个客户使用相同的PartitionKey,我想创建两个组...一组有100个客户,一个有42个客户.
我们在分支机构中开发了我们网站的2.0版本.现在该网站已上线,我们希望我们的分支机构更换主干(inkl.所有历史记录等).
我们对主干进行了一些错误修复,但它们都集成在分支中.那就是......主干中的所有代码都是死代码,我们希望主干完全像分支一样.
我们应该采取哪些措施来重新定义(是正确的术语)我们的分支到Subversion中的主干?
.net ×4
c# ×2
azure ×1
linq ×1
linq-to-sql ×1
msbuild ×1
naming ×1
resharper ×1
svn ×1
tfs ×1
tortoisesvn ×1
unit-testing ×1