小编Val*_*yev的帖子

如何在Html.TextBox帮助器中设置css类?

是否可以在TextBox html帮助器中设置css类?这显然不能编译:

<%=Html.TextBox("Region",Model.Region,new {class="Autocomplete"}) %>
Run Code Online (Sandbox Code Playgroud)

谢谢.

asp.net-mvc

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

何时使用属性而不是属性?

是否有特定情况应该在类而不是属性上使用自定义属性?我知道属性,因为他们发现性和性能的preferrable,但是属性......我什么时候应该肯定使用它们呢?

更新:

以下是Eric Lippert关于此决定的文章.

c#

12
推荐指数
1
解决办法
1199
查看次数

通过比较它们的序列化字节数组来比较类的两个实例是否可靠?

给定一个类的两个实例,通过首先对它们进行序列化然后比较字节数组(或者可能是数组的哈希值)来比较它们是一种好的和可靠的做法.这些对象可能具有复杂的层次结构属性,但序列化应尽可能深入.

相比之下,我指的是确保原始类型的所有属性具有相等值的过程,复杂类型的属性具有相等的原始类型属性等.至于集合属性,它们应该彼此相等:相等的元素,相同的位置:

{'a','b','c'} != {'a','c','b'}



 {new Customer{Id=2, Name="abc"}, new Customer {Id=3, Name="def"}} 
    !=
 {new Customer{Id=3, Name="def"}, new Customer {Id=2, Name="abc"}}
Run Code Online (Sandbox Code Playgroud)

 {new Customer{Id=2, Name="abc"}, new Customer {Id=3, Name="def"}}
    ==
 {new Customer{Id=2, Name="abc"}, new Customer {Id=3, Name="def"}}
Run Code Online (Sandbox Code Playgroud)

通过序列化我的意思是标准的.NET二进制格式化程序.

谢谢.

c# comparison serialization

12
推荐指数
1
解决办法
952
查看次数

Lazy <T>提供什么优于标准的懒惰实例化?

考虑这个例子,它显示了两种可能的延迟初始化方法.除了线程安全之外,在这里使用Lazy <T>还有什么特别的优势吗?

class Customer {
    private decimal? _balance2;
    private static decimal GetBalanceOverNetwork() {
        //lengthy network operations
        Thread.Sleep(2000);
        return 99.9M;
    }

    public decimal? GetBalance2Lazily() {
        return _balance2 ?? (_balance2 = GetBalanceOverNetwork());
    }

    private readonly Lazy<decimal> _balance1 = new Lazy<decimal>(GetBalanceOverNetwork);

    public Lazy<decimal> Balance1 {
        get { return _balance1; }
    }
}
Run Code Online (Sandbox Code Playgroud)

更新:

请将上面的代码视为一个简单的例子,数据类型是无关紧要的,这里的重点是比较Lazy <T>而不是标准的延迟初始化.

c# lazy-initialization

12
推荐指数
1
解决办法
675
查看次数

在所有后台线程池线程完成时得到通知

我有一个场景,当我用ThreadPool启动3..10个线程.每个线程都完成它的工作并返回ThreadPool.所有后台线程完成后,主线程中可以通知哪些选项?

目前我正在使用一种自行开发的方法,为每个创建的线程递增一个变量,并在后台线程即将完成时递减它.这很好用,但如果有更好的选择,我很好奇.

c# multithreading threadpool

10
推荐指数
1
解决办法
9046
查看次数

从文本文件中删除行的有效方法

我需要从文本文件中删除某一行.这样做最有效的方法是什么?文件可能很大(超过百万条记录).

更新:下面是我正在使用的代码,但我不确定它是否好.

internal void DeleteMarkedEntries() {
    string tempPath=Path.GetTempFileName();
    using (var reader = new StreamReader(logPath)) {
        using (var writer = new StreamWriter(File.OpenWrite(tempPath))) {
            int counter = 0;
            while (!reader.EndOfStream) {
                if (!_deletedLines.Contains(counter)) {
                    writer.WriteLine(reader.ReadLine());
                }
                ++counter;
            }
        }
    }
    if (File.Exists(tempPath)) {
        File.Delete(logPath);
        File.Move(tempPath, logPath);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# performance file-io

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

:: ActiveRecord :: Base中的基本部分

:: Base部分在Person <ActiveRecord :: Base类声明中的含义是什么?我是ruby的新手,从我到目前为止收集到的东西,应该使用Person <ActiveRecord.谢谢.

ruby ruby-on-rails

8
推荐指数
3
解决办法
2793
查看次数

如果没有安装Python,mercurial如何工作?

我的Windows 7机器上安装了Mercurial 1.3.我没有安装python,但Mercurial似乎没问题.

它是如何工作的?

此外,是否可以强制Mercurial在IronPython上运行并且它是否兼容?

谢谢.

python mercurial ironpython

8
推荐指数
3
解决办法
1604
查看次数

嵌套的app.config(web.config)文件

是否可以有两个app.config文件,其中一个app.config充当第二个(嵌套)app.config文件的容器?我想从外部文件中引用嵌套文件的特定部分.

为什么我需要这是因为源控制问题.有关详细说明,请参阅

非常感谢任何其他根本问题的解决方案.

.net configuration

8
推荐指数
1
解决办法
3131
查看次数

是否可以在NuGet包安装期间修改VS项目文件?

我想创建一个自定义MSBuild任务并将其作为NuGet包分发.要启用我的任务,应修改visual studio proj文件.

在安装NuGet包时,是否可以将我的代码段添加到proj文件中?

msbuild visual-studio nuget

8
推荐指数
1
解决办法
2161
查看次数