小编ole*_*sii的帖子

如何在DELETE之后等待RavenDB中的结果更新

我正在使用Raven DB的存储库模式.我的存储库界面是

public interface IRepository<T> where T : Entity
{
    IEnumerable<T> Find(Func<T, bool> exp);
    void Delete(T entity);
    void Save();
    ...
}
Run Code Online (Sandbox Code Playgroud)

并且实施是

public class Repository<T> : IRepository<T> where T : Entity
{
    public IEnumerable<T> Find(Func<T, bool> exp)
    {
        return session.Query<T>().Where(exp);
    }

    public void Delete(T entity)
    {
        session.Delete(entity);
    }

    public void Save()
    {
        session.SaveChanges();
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

我有一个测试,标记所有实体的删除,保存更改和查询数据库,以查看结果计数是否为零

[Test]
public void DeleteValueTest()
{
    //resolve repository
    var repository = ContainerService.Instance.Resolve<IRepository<DummyType>>();
    Func<DummyType, bool> dummyTypeExpr = item => item.GetType() == typeof(DummyType);

    //find all entries …
Run Code Online (Sandbox Code Playgroud)

c# repository-pattern ravendb

9
推荐指数
1
解决办法
1694
查看次数

如何禁用RavenDB复制

如何禁用RavenDB复制?原因是我在一台服务器上有一个简单的数据库,此时我不需要任何复制.

IDocumentStore tmpStore = new DocumentStore
{
    Url = url
};

tmpStore.Initialize();
tmpStore.DatabaseCommands.EnsureDatabaseExists(dbName); // WebException
Run Code Online (Sandbox Code Playgroud)

如果我尝试确保创建了数据库,则会收到HTTP状态为404的WebException.当RavenDB向/ docs/Raven/Replication/Destinations发出请求时,会发生此错误.或者我只是忽略这个例外?

c# ravendb

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

如何在Parallel.For中增加特定值的索引?

我想在特定值上增加索引,例如2:

for (int i = 0; i < 10; i+=2)
{
    Console.WriteLine(i);
}
Run Code Online (Sandbox Code Playgroud)

我如何使用Parallel该类做同样的事情,例如:

Parallel.For(0, 10, i =>
{
    Console.WriteLine(i);
    i += 2; //this a naïve assumption, it's not working
});
Run Code Online (Sandbox Code Playgroud)

编辑

我希望Parallel循环只运行5个操作(作为顺序),顺序对我来说无关紧要.

c# parallel-processing

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

快速实用的测试,看看字符串是否随机

我需要了解字符串是否足够随机.谁能指出我正确的方向?

背景

我需要模拟进程行为,其中进程将自身复制到临时位置,将自身重命名为随机名称,并自行执行.我的最终目标是检测这种活动.作为这项工作的一部分,我需要测试一个进程名称,它是一个字符串,用于随机性.我知道Kolmogorov的复杂性涉及到这一点,但它是无法计算的.什么是快速替代品:各种熵,Lempel-Ziv压缩水平?

我在找什么

string s1 = "test process name"
string s2 = "hgoi4dFh3e905jv"

double sensitivity = 0.5; // user-defined variable, a subjective threshold of randomness
bool b1 = SeemsRandom(s1, sensitivity);  // false
bool b2 = SeemsRandom(s2, sensitivity);  // true

bool SeemsRandom(string input, double sensitivity)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

c# random

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

为什么核心类型仅部分实现接口?

Q1为什么.NET中的新类仅部分实现接口?

Q2我应该在我的代码中做同样的事情吗?

在这里问了这个问题,所以我想,好吧很久以前,你可以有不同的用法等等,现在这种实现只是出于一致性的原因而受到支持.但新课程也是如此.

int[] list = new int[] {};
IList iList = (IList)list;
ilist.Add(1); //exception here
Run Code Online (Sandbox Code Playgroud)

ICollection c = new ConcurrentQueue<int>();
var root = c.SyncRoot; //exception here
Run Code Online (Sandbox Code Playgroud)

UPDATE

我不担心为什么我得到例外,很明显.但我不明白为什么实现明确定义的合同,而不是所有成员(这可能导致令人不快的运行时异常)?

.net c# collections interface

7
推荐指数
1
解决办法
210
查看次数

MS Build不在Build Server上编译MS Test Project

我正在使用TFS 2008和VS 2010.在我的解决方案中添加MS Test项目后,我开始在Build服务器上收到以下错误.

UnitTest1.cs(5,40):错误CS0234:名称空间"Microsoft.VisualStudio.TestTools"中不存在类型或命名空间名称"UnitTesting"(您是否缺少程序集引用?)UnitTest1.cs(22,17) :错误CS0246:找不到类型或命名空间名称'TestContext'(您是否缺少using指令或程序集引用?)UnitTest1.cs(28,16):错误CS0246:类型或命名空间名称'TestContext'可以找不到(你是否缺少using指令或程序集引用?)UnitTest1.cs(62,10):错误CS0246:找不到类型或命名空间名称'TestMethod'(你是否缺少using指令或程序集引用?)UnitTest1.cs(62,10):错误CS0246:找不到类型或命名空间名称'TestMethodAttribute'(您是否缺少using指令或程序集引用?)UnitTest1.cs(12,6):error CS0246:找不到类型或命名空间名称'TestClass'(您是否缺少using指令或程序集引用?)UnitTest1.cs(12,6):error CS 0246:找不到类型或命名空间名称'TestClassAttribute'(您是否缺少using指令或程序集引用?)完成执行任务"Csc" - FAILED.

我在构建服务器上安装了VS 2010,但仍然出现相同的错误.

msbuild tfs2008 visual-studio-2010

7
推荐指数
2
解决办法
8238
查看次数

c#字符串为十六进制,十六进制到字节转换

我有一个方法,它采用十六进制值并将其指定为明文但类型的字节

byte plainText = 0xd7;
Run Code Online (Sandbox Code Playgroud)

我想从文本框中获取此值,例如,用户将d7键入文本框,ı将分配给它

byte plaintText = 0xd7
Run Code Online (Sandbox Code Playgroud)

我无法实现这一点.

c# byte type-conversion

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

.NET错误处理:try/catch VS事件VS return-value/status-fields

我现在正处于跨平台移动应用程序开发的一个非常关键的交叉路上,并且可以真正使用一些专业知识(如woah).

给予一定的上下文(可以回答我希望帮助),我开发基于方便,花花公子MonoCross框架.NET移动应用,使用VS2010U(不MonoDevelop的,然而,这是IOS).第一个目标平台是Android,然后是IOS和Windows Phone"端口"(如果我做对了,那就不是真的).

现在我已经奠定了坚实的基础,包括业务逻辑,数据访问层,数据库,REST Web服务等,我正在经历并试图在一些错误处理中工作,但我不确定这是什么最好的方法是.

我被告知try-catch块可能是性能命中(在这种情况下这是一个大问题),
这是真的吗?我应该使用它们谨慎,或者只是一巴掌EM地方的异常可能会被抛出(我还挺想用他们在我所有的SQLite的API调用,因为我不知道他们在做什么赫克一半的时间做).

使用事件回调是错误处理的坏事吗?我被告知只要有可能使用这些,而不是的try-catch,出于性能的原因,但我不想破坏任何设计原则和范例,并与马虎,gauh-loppy码所有的地方结束.

第三个选项,具有最小的开销,但处理起来极其烦人,是状态字段和返回值.

那你觉得怎么样?我想我正在寻找一些大方向,也许还有一些关于何时何地使用每种方法的建议,以及我最有可能遗漏的任何其他技术.如果需要更多细节,请告诉我,因为我很乐意给他们.

感谢您抽出宝贵时间!

.net c# visual-studio-2010 xamarin.android

7
推荐指数
1
解决办法
901
查看次数

如何将Visual Studio中的所有源代码导出到文本文件中?

我有一个相对较大的Visual Studio解决方案.

我需要将所有源代码导出到文本文件中.我还想在某处包含一个文件名.我怎么能这样做?

例如,如果我有一个类型

namespace MyProject.Core
{
    /// <summary>
    ///   Enumerates possible record status
    /// </summary>
    public enum RecordType
    {
        NonWearTime = 0,
        WearTime = 1,
        NotClassified = 2
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望它转到output.txt文件(或任何其他文本格式),并显示如此

//***********************************
//Filename: RecordType.cs
//***********************************
namespace MyProject.Core
{
    /// <summary>
    ///   Enumerates possible record status
    /// </summary>
    public enum RecordType
    {
        NonWearTime = 0,
        WearTime = 1,
        NotClassified = 2
    }
}
Run Code Online (Sandbox Code Playgroud)

所有其他类型只应附加到文件的末尾.我尝试过Resharper,但它的头文件选项只能包含静态文本(我试过Filename: $FILENAME$),模板选项只适用于新创建的类.

伙计们,这是一个研究项目,我必须提供源代码和论文.

c# resharper export visual-studio-2010

7
推荐指数
1
解决办法
7894
查看次数

JIT.最好的方式序列化为json

我需要为jit库创建一个自定义json .我应该使用额外的C#逻辑还是以某种方式扩展JsonSerializer.Json应该是这样的 - >

var json = {
    "children": [
 {
     "children": [
     {
         "children": [],
         "data": {
             "playcount": "276",
             "$color": "#8E7032",
             "image": "http://userserve-ak.last.fm/serve/300x300/11403219.jpg",
             "$area": 276
         },
         "id": "album-Thirteenth Step",
         "name": "Thirteenth Step"
     }
}] 
Run Code Online (Sandbox Code Playgroud)

}

c# serialization json thejit

6
推荐指数
1
解决办法
1810
查看次数