小编Ben*_*tBe的帖子

为DTO/POCOS添加前缀 - 命名约定?

简单的问题,我想知道任何人在那里放置的命名约定DTO/POCOS ....

我真的不想像匈牙利符号一样加前缀..我离开了!

但我的dtos命名与我的实际返回的对象名称冲突,虽然它们在不同的命名空间中仍然有点混乱..

我想知道任何人适用的命名约定

例如,我的客户对象称为客户

我做了一个映射到dto ...这是客户..我在想DtoCustomer ..

不确定

任何人 ?

c# naming-conventions poco dto

21
推荐指数
3
解决办法
7018
查看次数

.NET框架中使用的设计模式?

增加对设计模式的理解的一种方法是发现如何在.NET框架中使用模式.

您是否在.NET框架中找到了任何设计模式的示例?在您的回答中,请简要描述模式,以及如何在框架中使用它的示例.

示例答案:

策略设计模式通过将算法封装到单独的类中来将算法与使用它的类分离.这允许切换算法.

List类的Sort方法是Strategy模式的一个示例.

public void Sort(IComparer<T> comparer)
Run Code Online (Sandbox Code Playgroud)

通过接受IComparer接口,类的用户可以在运行时切换排序算法.

.net design-patterns

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

编辑触发测试是下一步吗?

我刚刚阅读了Michael C. Feathers伟大的书籍"有效地使用遗留代码",这是对遗留代码进行测试的圣经.在本书中,他描述了一种称为编辑触发测试的东西:

如果在本书发布时没有出来,我怀疑有人会很快开发一个IDE,允许你指定一组将在每次击键时运行的测试.这将是关闭反馈循环的一种令人难以置信的方式.

它必须发生.这似乎是不可避免的.已经有IDE可以检查每次击键时的语法,并在出现错误时更改代码的颜色.编辑触发的测试是下一步.

当我读到这篇文章时,我没有听说过支持这一点的任何IDE或工具.但是,我刚刚发现了一个名为Infinitest的项目,它支持Java.

我的问题是:

  1. 有没有其他工具/框架支持这个(希望也适用于Visual Studio)?
  2. 您对此类测试有何体验(高效,减慢IDE等)?
  3. 这是TDD的下一步吗?

更新:

ide testing tdd unit-testing infinitest

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

您经常看到滥用C#速记吸气剂/孵化器?

在C#中,您可以以比其他语言更简单的方式创建getter/setter:

public int FooBar { get; set; }
Run Code Online (Sandbox Code Playgroud)

这将创建一个内部私有变量,您无法直接使用外部属性"FooBar"直接访问它.

我的问题是 - 你多久经常看到这种滥用?它似乎很有可能经常违反封装最佳实践.不要误解我的意思,我会酌情使用它,并为只读的只写类型的属性使用它的部分变体,但是你的代码库中的其他作者对它的不愉快经历是什么?

澄清:当私人变量合适时,滥用的预期定义确实会产生这样的属性.

c# getter setter encapsulation automatic-properties

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

使用(流利)NHibernate与StructureMap(或任何IoCC)

在我学习NHibernate的过程中,我已经达到了下一个障碍; 我该如何将它与StructureMap集成?

虽然代码示例非常受欢迎,但我对一般过程更感兴趣.

我打算做的是......

  • 使用Fluent NHibernate创建我的类映射以在NHibs配置中使用
  • 实现ISession和ISessionFactory
  • 将我的ISessionFactory实例作为单例引导到StructureMap中
  • 使用StructureMap注册ISession,使用per-HttpRequest缓存

但是,不要我需要调用我的会话实例各种整洁行动方法的HttpRequest的结束(因为这就是它的生命结束)?

如果我在Dispose()中进行整理,那么structuremap会为我解决这个问题吗?

如果没有,我该怎么办?

谢谢

安德鲁

c# structuremap nhibernate fluent-nhibernate

5
推荐指数
1
解决办法
3507
查看次数