小编sgt*_*gtz的帖子

在NUnit中替换Console.WriteLine?

之前没有对NUnit做过多少工作,但只是想以控制台类型的方式将一些文本转储到窗口中.

e.g. Console.WriteLine("... some information...");  
Run Code Online (Sandbox Code Playgroud)

这当然不会起作用,因为NUnit正在推动事情发展.

我正在构建一些单元测试,并希望在调试期间转储一个变量值列表以供检查.如果我需要这样做,它不是严格的单元测试,我承认,但这将是方便的.

.net c# debugging nunit

37
推荐指数
5
解决办法
4万
查看次数

sals语句与equals vs in

假设有人来找你,并说我们将通过替换等于减少我们编写的SQL数量IN.单用标量值和数字列表都可以使用.

SELECT * 
  FROM table 
 WHERE id = 1
Run Code Online (Sandbox Code Playgroud)

要么

SELECT * 
  FROM table 
 WHERE id IN (1)
Run Code Online (Sandbox Code Playgroud)

这些语句是否等同于优化程序生成的语句?

从表面上看,这看起来非常简单,但由于两个原因导致简化:1.不需要复制大块SQL,以及2.我们不会过度使用动态SQL.

这是一个人为的例子,但请考虑以下内容.

select a.* from tablea a 
join tableb b on a.id = b.id
join tablec c on b.id2 = c.id2
left join tabled d on c.id3 = c.id3
where d.type = 1
Run Code Online (Sandbox Code Playgroud)

......对于不止一个案例,也是如此

select a.* from tablea a 
join tableb b on a.id = b.id
join tablec c on b.id2 = c.id2
left join tabled d on c.id3 …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

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

Stack Overflow,Redis和Cache失效

现在Stack Overflow使用redis,它们是否以相同的方式处理缓存失效?即一个标识列表哈希到查询字符串+名称(我猜这个名称是某种目的或对象类型名称).

也许他们然后直接通过id检索缓存中丢失的单个项目(绕过一堆数据库索引并使用更高效的聚簇索引).那很聪明(杰夫提到的补液?).

现在,我正在努力找到一种方法来简洁地调整所有这些.在我自己做第一次切割之前,是否有任何可以用来帮助澄清我的想法的例子?

另外,我想知道在使用.net缓存(System.Runtime.Caching或System.Web.Caching)和外出并使用redis之间的截止点.或者Redis只是放得更快?

这是2009年的原始SO问题:

https://meta.stackexchange.com/questions/6435/how-does-stackoverflow-handle-cache-invalidation

其他几个链接:

https://meta.stackexchange.com/questions/69164/does-stackoverflow-use-caching-and-if-so-how/69172#69172

https://meta.stackexchange.com/questions/110320/stack-overflow-db-performance-and-redis-cache

.net c# caching redis

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

在Dapper中有一个ExecuteScalar

看起来Dapper中有一个ExecuteScalar ......

http://code.google.com/p/dapper-dot-net/issues/attachmentText?id=22&aid=220000000&name=ExecuteScalar.cs&token=9e2fd8899022f507b140ffb883c60e34

是否重命名或删除了ExecuteScalar?

现在可以用.Query或.Query <T>来实现吗?

c# dapper

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

JavaScript的协议缓冲区?

有没有办法在JavaScript中执行协议缓冲?

为什么选择.js?

如果您暂时考虑科学要求,可能会弹出一些情况,您可能希望将大量数据发送到客户端.使用CRUD风格时,您使用的内容并不重要.对于科学的东西,它确实很重要(至少我认为它确实如此).

权衡:

  • protobuffs可以很好地平衡紧凑性,序列化和反序列化速度.

  • 基于文本的协议(xml/json)具有更大的消息大小...但是使用javascript我不知道哪个更有效.

参考:

社区提供的其他参考资料(更多背景见下文):

javascript gwt protocol-buffers

22
推荐指数
3
解决办法
9695
查看次数

在签名的组件中使用无符号组件

发现这些有用的链接简化了SO.

http://buffered.io/posts/net-fu-signing-an-unsigned-assembly-without-delay-signing/

如何修复"引用程序集没有强名称"错误?

我按照这个过程.这似乎很容易.只是想知道是否有一个点击式自动化工具将为我这样做 - 特别是对于无符号第三方A.dll引用未签名的B.dll引用无符号C.dll的情况.

.net c#

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

将匿名类型转换为接口?

这似乎不可能吗?那么什么是最好的解决方案?展开/动态?

public interface ICoOrd {
    int x { get; set; }
    int y { get; set; }
}      
Run Code Online (Sandbox Code Playgroud)

...

ICoOrd a = new {x = 44, y = 55};
Run Code Online (Sandbox Code Playgroud)

参考:

c# interface anonymous-types

19
推荐指数
2
解决办法
6077
查看次数

如何在Debug中显示ToString()

我想在调试模式下让ToString()显示我控制下的类.

当你用鼠标悬停在一个变量上时,这是第一个出现的东西.这有属性吗?

.net c# debugging visual-studio-debugging

14
推荐指数
4
解决办法
3935
查看次数

MemoryStream:为什么在readByte之后转换为byte

MS的这个例子中,你会注意到在我们从内存流中读取一个字节之后,它会进入一个int,然后必须将其转换为byte.它让我感到奇怪的是,像这样的函数.ReadByte()首先不返回一个字节.MS有这样做的原因吗?

// Read the remaining bytes, byte by byte.
while(count < memStream.Length)
{
    byteArray[count++] =
        Convert.ToByte(memStream.ReadByte());
}
Run Code Online (Sandbox Code Playgroud)

一个念头发生在我身上.也许这取决于使用情况.也许ReadByte()通常用于检索短长度,这些子句在检索中通过长度变化消耗

int length=ms.ReadByte();
ms.Read(buf,0,lenth);
Run Code Online (Sandbox Code Playgroud)

即你可以使用没有演员阵容的长度.这是一个足够好的理由吗?

.net c# memorystream

13
推荐指数
2
解决办法
3976
查看次数

BitArray和XOR

我正在寻找一种基于运算符的方式来处理位掩码和逐位布尔运算(XOR/NOR/OR/AND/NOT/EQV /等).一般来说,我真的很喜欢扩展方法风格的方法,但在这种情况下,我觉得它有点乱.

有没有更简洁的方法来处理C#中的位?

        BitArray a = new BitArray(0x001);
        BitArray b = new BitArray(0x100);
        BitArray c = new BitArray(0x010);

        BitArray test = a | b;   // won't compile
        BitArray test2 = a ^ c;  // won't compile

        BitArray test3 = a.Or(b);   // compiles
        BitArray test4 = a.Xor(c);  // compiles
Run Code Online (Sandbox Code Playgroud)

.net c#

13
推荐指数
3
解决办法
2117
查看次数