小编ser*_*g10的帖子

当按下ctrl和光标键时,使Visual Studio了解CamelCase

有没有办法可以配置Visual Studio 2008来理解CamelCase? 具体来说,我希望能够获取ctrl + rightleft光标将我带到变量或类型名称的子部分.

即,如果我的光标位于此行的开头:

LongNamedExampleClass longNamed = new LongNamedExampleClass();
Run Code Online (Sandbox Code Playgroud)

我点击了ctrl + right,我想跳到Named类名中的" ",而不是变量名的开头.如果我再次点击它,我想去" Example".我希望这是有道理的...

我在日食中使用了这个导航功能,发现很难忘掉那些根深蒂固的东西.

customization keyboard-shortcuts visual-studio

124
推荐指数
5
解决办法
2万
查看次数

在事件声明中添加匿名空委托是否有缺点?

我已经看到了一些关于这个习语的提及(包括SO):

// Deliberately empty subscriber
public event EventHandler AskQuestion = delegate {};
Run Code Online (Sandbox Code Playgroud)

好处很明显 - 它避免了在提升事件之前检查null的必要性.

但是,我很想知道是否有任何缺点. 例如,它是否被广泛使用并且足够透明以至于不会引起维护问题?空事件用户呼叫是否有明显的性能影响?

c# events delegates coding-style idioms

82
推荐指数
4
解决办法
1万
查看次数

C#有办法给我一个不可变的字典吗?

核心C#库中是否有任何可以为我提供不可变字典的东西?

Java的一些东西:

Collections.unmodifiableMap(myMap);
Run Code Online (Sandbox Code Playgroud)

而且只是为了澄清,我不打算阻止键/值本身被改变,只是字典的结构.如果任何IDictionary的mutator方法被调用(Add, Remove, Clear),我想要快速和大声失败的东西.

.net c# java collections dictionary

68
推荐指数
3
解决办法
2万
查看次数

嵌套的Java枚举定义 - 声明为静态会产生影响吗?

我有一个界面 - 这是一个很好的人为的版本作为一个例子:

public interface Particle {

    enum Charge {
        POSITIVE, NEGATIVE
    }

    Charge getCharge();

    double getMass();

    etc...
}
Run Code Online (Sandbox Code Playgroud)

如果我将Charge枚举定义为静态,那么这种实现方式有什么不同- 即这有什么影响:

public interface Particle {

    static enum Charge {
        POSITIVE, NEGATIVE
    }

    Charge getCharge();

    double getMass();

    etc...
}
Run Code Online (Sandbox Code Playgroud)

java enums class-design

54
推荐指数
2
解决办法
2万
查看次数

你能推荐一个.net模板引擎吗?

我正在寻找一个.net模板引擎 - 简单,轻量,稳定,没有太多的依赖.我目前所需要的只是创建模板化的纯文本和HTML电子邮件.谁能给我一个好的推荐?

如果它有帮助 - 比如Java的FreemarkerVelocity库.

[更新]感谢迄今为止的答案 - 非常感谢.当你使用这些库时,我真的很喜欢推荐或战争故事.似乎是在不依次尝试每个决策的情况下做出决定的最佳方式.

asp.net templates viewengine templating-engine

50
推荐指数
5
解决办法
3万
查看次数

可以将Resharper设置为在IDisposable未正确处理时发出警告吗?

Resharper 4(甚至是Visual Studio本身......)中是否有一个设置,如果我忘记将代码包装在一个using块中,或者在一个块中省略正确的Dispose调用,它会强制发出警告finally

.net c# resharper static-analysis

33
推荐指数
2
解决办法
5495
查看次数

文档差异算法如何工作?

我想实现word文档的不同,需要实现哪些算法?

algorithm diff

28
推荐指数
4
解决办法
1万
查看次数

我应该*总是*支持在C#3.0中隐含类型的局部变量吗?

Resharper当然这么认为,开箱即用它会唠叨你转换

Dooberry dooberry = new Dooberry();
Run Code Online (Sandbox Code Playgroud)

var dooberry = new Dooberry();
Run Code Online (Sandbox Code Playgroud)

这真的被认为是最好的风格吗?

c# resharper styles

27
推荐指数
3
解决办法
3776
查看次数

我可以(并且我是否想要)在.net中设置最大堆大小?

来自java背景,我习惯的事情之一就是告诉JVM最大堆大小应该是多少.如果正在运行的程序试图吞下超过允许的数量,并且垃圾收集器无法释放任何更多的资源,那么抛出OutOfMemoryError就会发生爆炸.因此,在Java中设置最大堆大小非常重要.

这适用于.net吗? 你能设置堆大小限制吗?CLR是否只是在它达到机器的物理极限之前不断增长?或者,由于我的Java眼罩阻止我看到某些微妙的原因,它在.net中不是问题吗?

.net heap performance garbage-collection

27
推荐指数
4
解决办法
1万
查看次数

Visual Studio 2008 - 跳转到行号快捷方式

我可以通过双击Visual Studio中的状态栏来转到特定的行号.是否有键盘快捷键执行相同的操作?

ide keyboard-shortcuts visual-studio-2008 visual-studio

22
推荐指数
2
解决办法
2万
查看次数