小编cec*_*lip的帖子

在ASP.NET MVC6中使用TagHelpers与ViewComponents

我试图理解asp.net 5中TagHelpers和ViewComponents之间的用例差异,因为最终结果功能看起来非常相似.我们有TagHelpers可以创建新的HTML标记,这些标记由Razor引擎解析,然后是明确调用的ViewComponents.两者都返回一些HTML内容,两者都有各自的基类支持,两者都有可以实现的异步版方法来完成工作.

那么什么时候会用到另一个呢?或者我错过了一些信息?

asp.net-core-mvc asp.net-core

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

在Xunit2中自定义测试名称

当我今天使用xUnit v2运行我的测试时,我通常使用如下命名约定:

[Fact(DisplayName= "Method Will Do Something")] public void Method_Will_Do_Something() { }

我可以插入什么扩展点,这将允许我根据我的测试方法的命名约定设置我的测试显示名称?

.net xunit2

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

在ReSharper JavaScript测试中共享引用路径

我和我的团队正在开发一个具有大量Angular代码和Jasmine测试的Web应用程序.我们正在使用Visual Studio和ReSharper的内置Jasmine测试运行器.为了ReShaper,我们的JS测试文件都有像这样设置在顶部的引用路径

/// <reference path="/path/to/somefile.js" />
Run Code Online (Sandbox Code Playgroud)

我们有很多这样的参考.对于每个新的测试文件,我们都必须添加这些引用.如果我们有一个新组件或外部库,我们必须添加对几乎所有现有测试文件的另一个引用.对于包括外部角度模块尤其如此.

有没有办法为resharper中的js测试创建共享参考文件?当您的解决方案包含大量较小的文件时,这确实成为核心

javascript resharper jasmine angularjs

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

Autofac在Web上失去注册.配置编辑

我有一个分层的Web应用程序,我使用ASP.NET MVC 4,WebAPI和一些其他组件构建.我正在使用最新版本的Autofac 2.6.2.859作为我的DI容器以及MVC和WebAPI集成.我在不同的层中设置了autofac模块,我正在使用新的RegisterAssemblyModules扫描各种模块的AppDomain程序集.

在启动时,每个都很有效.当我编辑web.config文件并且应用程序变热时,我的注册会丢失.我得到一个DependencyResolutionException -

可以使用可用的服务和参数调用在"My.Class.Name"类型上找到"公共绑定标志"的构造函数:

所以我的注册没有被重新加载.有谁知道如何解决这个问题?我应该将我的初始化代码放在Application_Start()以外的其他地方吗?

UPDATE

这是我的代码的样子

 public static class IoC
{
    public static void Configure()
    {
        var builder = new ContainerBuilder();
        var assemblies = AppDomain.CurrentDomain.GetAssemblies();

        //Assembly Modules            
        builder.RegisterAssemblyModules<NSUTriviaModuleBase>(assemblies);

        // Register API controllers using assembly scanning.
        builder.RegisterControllers(assemblies);

        // Register API controllers using assembly scanning.
        builder.RegisterApiControllers(assemblies);

        var container = builder.Build();
        // Set the dependency resolver implementation.
        var resolver = new AutofacWebApiDependencyResolver(container);

        GlobalConfiguration.Configuration.DependencyResolver = resolver;
        DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
    }
}
Run Code Online (Sandbox Code Playgroud)

web-config autofac asp.net-web-api

4
推荐指数
1
解决办法
4023
查看次数

使用EF 4.3迁移添加TimeStamps

我正在使用Code First Migrations,我正在改变我的模型,以便为我的表添加时间戳字段.我正在尝试在第二次迁移中添加timetamp字段.以下是我的代码的示例

public class User {
    public int UserId { get; set; }
    public string UserName { get; set; }      
    public byte[] TimeStamp { get; set; }
}

 public class UserModelConfiguration: EntityTypeConfiguration<User> {
        public UserModelConfiguration() {
            Property(p => p.UserName).IsRequired().HasMaxLength(250);
            Property(p => p.TimeStamp).IsRowVersion();            
        }
    }
Run Code Online (Sandbox Code Playgroud)

生成的迁移看起来像这样

public override void Up()
        {                
            AddColumn("Users", "TimeStamp", c => c.Binary(nullable: false, fixedLength: true, timestamp: true, storeType: "rowversion"));
        }
Run Code Online (Sandbox Code Playgroud)

当我执行Update-Database命令时,收到一条错误消息 "无法在数据类型时间戳的列上创建默认值.表'用户',列'TimeStamp'.无法创建约束 "我移动了所有数据表,但没有解决问题.

如何向此迁移集添加时间戳字段?

.net entity-framework ef-migrations entity-framework-4.3

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

如何使用MS Fakes为索引属性创建存根

我有一个我需要模拟的接口,它具有部分看起来像这样的索引器属性.

 public interface MyInterface{         
     string this[string name] {get;set;};
     string this[int index] {get;set;};
 }
Run Code Online (Sandbox Code Playgroud)

我想模拟界面,以便上面的名称和索引的某些值返回我提供的值.如何使用Microsoft Fakes Framework实现这一目标?

unit-testing microsoft-fakes

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