我已经将VS2010与Resharper 5一起使用了几个星期,并且遇到了性能问题.有时键入时,光标会滞后,键盘不会立即显示.此外,滚动有时会滞后.
有一个论坛线程启动,JetBrains一直在响应.几个人(包括我自己)添加了他们的声音并上传了一些性能配置文件.
如果这里的任何人有这个问题,我会鼓励你访问该主题并让JetBrains了解它.
有没有人有这个问题,并有建议恢复性能?
我正在寻找一些方法将.cs文件导出到.html文件,以便在网上发布,但我的搜索没有多大帮助.我记得几年前一个名为DevC++的IDE可以为C代码做这个,但是我不知道我是怎么用C#4做的.
Visual Studio能以某种方式执行此操作吗?
我使用VS2010进行单元测试.有谁知道如何指定VS 2010放置其TestResults的位置?默认情况下,它将TestResults文件夹放在解决方案文件夹中,我想将其移出其他地方.
谢谢,雷.
我必须使用Visual Studio安装Windows服务.安装的目标位置由Visual Studio安装项目中的"DefaultLocation"属性处理.我曾使用[AppDataFolder]标签来安装应用程序.结果,它已安装在"C:\ Users [username]\AppData**Roaming**"文件夹中.我无法弄清楚如何修改"DefaultLocation"属性,以便应用程序将安装在C:\ Users [username]\AppData**Local**文件夹中.知道怎么做到这一点?
向后兼容性是语言设计者最关心的问题,特别是当语言像C#一样受欢迎时.随着时间的推移,语言会积累过时的功能.避免使用这些功能被认为是一种很好的做法,但它们保留在与旧版本兼容的语言中.
如果向后兼容性不是问题,应该删除C#中的哪些语言功能或基类库?
我不是在问一些开发人员喜欢和其他人讨厌的功能.我感兴趣的是(几乎)被普遍认为是最好避免的功能(也许是因为现在有一种更好的方法可以做同样的事情).
我已经在c#编写了一段时间,并且通常对编码标准的经验法则有很好的了解.我最近鼓励我的大学采用基于结果的方法来编写功能块,而不是嵌套逻辑块,并且正在寻求你的建议.下面是我正在谈论的一个例子,其中一种情况的结果用于确定代码路径而不是嵌套.有人建议这种方法更容易阅读,特别是如果结果需要多层嵌套,但我更喜欢使用Curly定律和重构方法和函数,其中嵌套变深.
private void MethodOne()
{
bool CarryOn = false;
// first layer
if (ValidationRuleOne() == true)
{
CarryOn = true;
} else {
CarryOn = false;
}
// second layer
if (CarryOn)
{
CarryOn = ValidationRuleTwo();
} else {
CarryOn = false;
}
// third layer
if (CarryOn)
{
CarryOn = ValidationRuleThree();
} else
{
CarryOn = false;
}
}
Run Code Online (Sandbox Code Playgroud)
这种方法对我来说似乎不对,因为我建议将该方法重写为..
private void MethodOne()
{
// first layer
if (ValidationRuleOne() == true)
{
// second layer
if (ValidationRuleTwo() …
Run Code Online (Sandbox Code Playgroud) 我太偏执了,不能在VS2008旁边的我的生产机器上安装VS2010 Beta 2而没有听到那些已经采取过暴跌的人.我知道MS说它没关系,但这并不一定意味着它会起作用.
有没有人在他们的生产机器上成功安装VS2010 Beta 2(最好是Ultimate版本),没有任何负面影响?
有一个更好的方法吗?我试图遍历partsToChange集合并构建where子句,但它将它们组合在一起而不是对它们进行ORing.我也不想在partsToChange列表中明确地对每个项执行相等.
var partsToChange = new Dictionary<string, string> {
{"0039", "Vendor A"},
{"0051", "Vendor B"},
{"0061", "Vendor C"},
{"0080", "Vendor D"},
{"0081", "Vendor D"},
{"0086", "Vendor D"},
{"0089", "Vendor E"},
{"0091", "Vendor F"},
{"0163", "Vendor E"},
{"0426", "Vendor B"},
{"1197", "Vendor B"}
};
var items = new List<MaterialVendor>();
foreach (var x in partsToChange)
{
var newItems = (
from m in MaterialVendor
where
m.Material.PartNumber == x.Key
&& m.Manufacturer.Name.Contains(x.Value)
select m
).ToList();
items.AddRange(newItems);
}
Run Code Online (Sandbox Code Playgroud)
附加信息:我在LINQPad中工作,这是一个LinqToSql查询.这里MaterialVendor既是类又是DataContext表.
编辑:LinqToSql详细信息.
这似乎是我在可读性和降低复杂性方面找到的最佳方法.它还具有未明确定义集合类型的额外好处.这意味着我可以改变匿名类型的回复.
var predicate = PredicateBuilder.False<MaterialVendor>();
foreach …
Run Code Online (Sandbox Code Playgroud) c# ×5
export ×1
html ×1
install ×1
installation ×1
linq ×1
linq-to-sql ×1
linqpad ×1
performance ×1
refactoring ×1
resharper ×1
unit-testing ×1