小编sta*_*ica的帖子

在Moq中分配/ ref参数

是否可以使用Moq(3.0+)分配out/ ref参数?

我看过使用Callback(),但Action<>不支持ref参数,因为它基于泛型.我也最好It.Isref参数的输入上放置一个约束(),尽管我可以在回调中做到这一点.

我知道Rhino Mocks支持这个功能,但我正在研究的项目已经在使用Moq了.

c# parameters moq ref out

268
推荐指数
7
解决办法
11万
查看次数

有什么不同.AsNoTracking()会做什么?

我有一个关于.AsNoTracking()扩展的问题,因为这一切都很新而且很混乱.

我正在使用网站的每请求上下文.

我的很多实体都没有改变,所以不需要跟踪,但我有以下场景,我不确定数据库会发生什么,甚至在这种情况下它是否有所不同.

这个例子就是我目前正在做的事情:

context.Set<User>().AsNoTracking()
// Step 1) Get user
context.Set<User>()
// Step 2) Update user
Run Code Online (Sandbox Code Playgroud)

这与上面相同,但从.AsNoTracking()步骤1中删除:

context.Set<User>();
// Step 1) Get user
context.Set<User>()
// Step 2) Update user
Run Code Online (Sandbox Code Playgroud)

步骤1和2使用相同的上下文,但在不同的时间发生.我无法解决的是,是否存在任何差异.由于步骤2是更新,我猜两个都会打两次数据库.

谁能告诉我有什么区别?

.net c# entity-framework entity-framework-4.3

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

为什么C#编译器会将此变换!=比较,就像它是>比较一样?

我有机会发现C#编译器会改变这个方法:

static bool IsNotNull(object obj)
{
    return obj != null;
}
Run Code Online (Sandbox Code Playgroud)

...进入这个CIL:

.method private hidebysig static bool IsNotNull(object obj) cil managed
{
    ldarg.0   // obj
    ldnull
    cgt.un
    ret
}
Run Code Online (Sandbox Code Playgroud)

...或者,如果您更喜欢查看反编译的C#代码:

static bool IsNotNull(object obj)
{
    return obj > null;   // (note: this is not a valid C# expression)
}
Run Code Online (Sandbox Code Playgroud)

怎么把它!=翻译成" >"?

c# il cil binary-operators notnull

147
推荐指数
1
解决办法
5384
查看次数

.NET Framework 4.5目录在哪里?

我安装了Windows 8,Visual Studio 2012,但没有安装v4.5目录%WINDIR%\Microsoft.NET\Framework.

我做错了什么,或者.NET 4.5与其他人有什么不同?

如果是因为我没有安装这些工具,是否有一套不同的工具可供下载?据我所知,我能够构建.NET 4.5应用程序.

installation-path .net-4.5

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

如何在SQL Server中一次更改多个列

我需要ALTER表中几列的数据类型.

对于单个列,以下工作正常:

ALTER TABLE tblcommodityOHLC
ALTER COLUMN
    CC_CommodityContractID NUMERIC(18,0) 
Run Code Online (Sandbox Code Playgroud)

但是如何在一个语句中更改多个列?以下不起作用:

ALTER TABLE tblcommodityOHLC
ALTER COLUMN
    CC_CommodityContractID NUMERIC(18,0), 
    CM_CommodityID NUMERIC(18,0)
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server alter-column

127
推荐指数
5
解决办法
23万
查看次数

谁设计/设计了C ++的IOStreams,并且按照当今的标准,它仍然被认为设计良好吗?

首先,似乎我在征求主观意见,但这并不是我所追求的。我很想听听有关该主题的一些有充分根据的论点。


为了对如何设计现代流/序列化框架有所了解,我最近得到了Angelika Langer和Klaus Kreft撰写的《Standard C ++ IOStreams and Locales》一书的副本。我发现,如果IOStreams的设计不当,那么它就不会首先进入C ++标准库。

在阅读了本书的各个部分之后,我开始怀疑IOStreams是否可以从整体架构的角度与STL进行比较。阅读例如对Alexander Stepanov(STL的“发明人”)的采访,以了解有关STL的一些设计决策。

特别令我惊讶的是

  • 谁来负责IOStreams的总体设计似乎是个未知数(我很想阅读有关此的一些背景信息-有人知道好的资源吗?);

  • 一旦你钻研输入输出流,例如眼前表面之下,如果你想输入输出流用自己的类扩展,你会得到一个接口具有相当神秘和扑朔迷离的成员函数的名称,例如getloc/ imbueuflow/ underflowsnextc/ sbumpc/ sgetc/ sgetnpbase/ pptr/ epptr(和有可能甚至更糟的例子)。这使得了解整体设计以及单个零件如何协作变得更加困难。即使我上面提到的那本书没有帮助多(恕我直言)


因此,我的问题是:

如果你要判断今天的软件工程标准(如果确实对这些任何普遍同意),将C ++的输入输出流仍然被认为是经过精心设计?(我不想通过通常认为过时的方法来提高软件设计技能。)

c++ iostream

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

如何并行运行多个DOS命令?

如何运行多个dos命令?

我有一个for循环,它运行服务器的检测,以检测哪个服务器工作,并且速度很快.并且因为有更多的服务器,我希望不按顺序运行所有服务器检测,而是并行运行.

cmd batch-file

82
推荐指数
3
解决办法
14万
查看次数

是否有用于C++的LINQ库?

是否有任何平台不可知(而非CLI)动作以某种方式让LINQ进入C++?

我的意思是世界各地的服务器框架的很大一部分运行在UNIX的风格上,并且在UNIX上访问LINQ for C++可能会让很多人开心!

c++ linq unix

79
推荐指数
8
解决办法
4万
查看次数

为什么不使用IoC容器来解析实体/业务对象的依赖关系?

我理解DI背后的概念,但我只是在学习不同的IoC容器可以做什么.似乎大多数人都主张使用IoC容器来连接无状态服务,但是如何将它们用于实体等有状态对象呢?

无论是对还是错,我通常会用行为填充我的实体,即使这种行为需要外部类.例:

public class Order : IOrder
{

    private string _ShipAddress;
    private IShipQuoter _ShipQuoter;

    public Order(IOrderData OrderData, IShipQuoter ShipQuoter)
    {
        // OrderData comes from a repository and has the data needed 
        // to construct order
        _ShipAddress = OrderData.ShipAddress;  // etc.
        _ShipQuoter = ShipQuoter;

    }

    private decimal GetShippingRate()
    {
        return _ShipQuoter.GetRate(this);
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,依赖项是Constructor Injected.现在提出几个问题.

  1. 让您的实体依赖于诸如ShipQuoter之类的外部类别是否被视为不良做法?如果我正确理解定义,消除这些依赖性似乎会导致我陷入贫血领域.

  2. 使用IoC容器来解决这些依赖关系并在需要时构建实体是不好的做法吗?是否有可能做到这一点?

感谢您的任何见解.

entities dependency-injection castle-windsor ioc-container inversion-of-control

77
推荐指数
1
解决办法
9120
查看次数

"Monad变形金刚比效果更强大" - 例子?

Edwin C. Brady撰写的关于Idris影响的"使用代数效应和依赖类型进行编程和推理"的论文包含(未引用的)声明:

尽管[效果和单子变换器]在功率上并不相同 - monad和monad变换器可以表达更多概念 - 但是捕获了许多常见的有效计算.

哪些例子可以通过monad变换器建模而不是效果?

monads functional-programming effects idris

77
推荐指数
1
解决办法
1901
查看次数