小编Ale*_*lex的帖子

TDD - 想用假存储库测试我的服务层,但是如何?

我设计了一个使用存储库模式的应用程序,然后设计了一个单独的服务层,例如:

public class RegistrationService: IRegistrationService
{
    public void Register(User user)
    {
        IRepository<User> userRepository = new UserRepository();
        // add user, etc
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我在Register方法中实例化我的存储库.现在,因为我想编写一些单元测试,我真的无法实现它并用虚假的存储库替换它可以吗?

我不想将存储库添加为类变量(并通过构造函数设置),因为我认为这会使我的代码"臭"(并非所有方法都需要所有存储库,而且我不需要调用层来了解存储库等).

建议?

c# asp.net asp.net-mvc repository-pattern

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

ASP.NET MVC:ModelState与ModelStateDictionary

我有一个服务,它有一个触发某个控制器方法时调用的方法.

我的服务返回一个自定义结果对象PlacementResult,我想在其中将可能发生的错误(验证)传递回控制器方法.

PlacementResult应该有一个ModelState或ModelStateDictionary来将错误传回控制器(最后查看)吗?我怎么把它串在一起?

最后,如何将ModelState/ModelStateDictionary(无论你告诉我应该选择哪个)返回到视图中(突出显示相应的文本框,显示错误消息等)?

谢谢 !

c# asp.net asp.net-mvc

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

避免"未定义类或CssClass值"ASP.NET MVC ASCX部分视图(UserControls)中的警告

我想知道如何阻止来自我的ASP.NET MVC部分视图/ ASCX用户控件的那些恼人的编译器警告"未定义类或CssClass值".CSS已正确定义,但CSS文件的引用显然仅在母版页上.我的部分视图包含很多关于div等的CSS类引用,所以我得到了大量的警告,我不应该看到.

我怎么解决这个问题?

谢谢 !

asp.net-mvc views

12
推荐指数
2
解决办法
7269
查看次数

我的C#项目中的循环引用

我有以下情况:

  1. 一个项目MyCompany.MyProject.Domain包含我的域模型,以及部分类(如Contact).

  2. 我希望'扩展'(通过部分类,而不是扩展方法)我的Contact类具有一个属性Slug,它将为我提供一个简单的URL友好文本表示的名字和姓氏.

  3. 我有一个字符串扩展方法ToSlug()在我Utility的项目MyCompany.MyProject.Utilities这不正是我想要2).

  4. 问题:我的Utility项目已经引用了我的Domain项目,这意味着我无法让Domain项目看到Utility项目的ToSlug()方法而不会导致循环引用.

我并不热衷于创建另一个项目来解决这个问题,我真的希望保持Slug逻辑共享.

我怎么解决这个问题?

c# circular-dependency

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

对所有控制器操作强制执行操作筛选(C#/ ASP.NET MVC)

我创建了一个新的动作过滤器(属性,类似于[Authorize]),它根据会话值授权访问控制器动作.但是,我基本上用该属性装饰我的所有控制器动作(除了极少数).

所以,我认为除了在将[ExemptFromAuthorize]属性附加到控制器动作的情况下,总是执行Action Filter会更好吗?(也许通过继承我自己的Controller类?)

我怎样才能做到这一点?

.net c# asp.net-mvc action-filter controller-action

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

访问IQueryable后面的DataContext

是否可以访问IQueryable后面的DataContext对象?

如果是这样,怎么样?

c# linq datacontext iqueryable

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

C#方法类似Base64String,但只有字母数字(无加号或斜杠)

是否有任何C#方法与Convert.ToBase64String类似,但除了字母数字输出外不生成任何内容?

谢谢!

c# base64 encoding alphanumeric

11
推荐指数
2
解决办法
9425
查看次数

C#扩展方法仅在一个类中可见且可访问("私有")

在C#中,是否可以在类上创建扩展方法但限制类中的可见性/可访问性?(例如,M类的扩展方法A只能在Z类中访问)

例:

class A
{
     String foo = "";
     String bar = foo.MakeMillionaire("arg");
}
Run Code Online (Sandbox Code Playgroud)

在上面的例子中我想要的扩展方法"MakeMillionaire"扩展String类是A类.我可以通过A类中定义的静态类扩展方法做到这一点不知何故内可见和可访问?

编辑:尝试常规嵌套类会产生"错误:必须在顶级静态类中定义扩展方法".

.net c# extension-methods

11
推荐指数
2
解决办法
8237
查看次数

jQuery立即从所有后代中删除CSS类

我可以一次从元素中的所有XYZ元素中删除特定的CSS类吗?

示例:active从我的搜索中的所有<a> 锚点中删除CSS类. div

如果是这样,怎么样?

javascript jquery jquery-selectors

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

迭代对象自己的字符串和修剪每个

我有多个大对象,每个对象有大约60个字符串.我必须修剪所有这些字符串,我想这样做而不必去this.mystring = this.mystring.Trim().相反,我正在寻找一种方法来自动让每个对象发现自己的字符串,然后执行操作.

我对反思有点了解,但还不够,但我认为这是可能的吗?

另外,我不确定这是否重要,但是一些字符串属性是只读的(只有一个getter),因此必须跳过这些属性.

救命?

.net c# reflection trim

11
推荐指数
1
解决办法
2942
查看次数