小编Dal*_*use的帖子

模拟新的Microsoft Entity Framework Identity UserManager和RoleManager

有没有人想出了一个成功的嘲弄解决方案UserManagerRoleManager?我整天都在靠墙打我的头.我想要做的就是模拟对象以使用内存集合而不是命中Entity Framework数据存储.我已经浏览了互联网并尝试了几种使用MOQ的不同方法.

我的印象是新东西更容易测试.我错过了什么吗?

c# unit-testing entity-framework moq asp.net-identity

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

找不到方法:'System.String System.String.Format(System.IFormatProvider,System.String,System.Object)

我有一个Web API 2项目,其中包含可在本地运行良好的帮助页面但在将其推送到Azure时会抛出此错误:

找不到方法:'System.String System.String.Format(System.IFormatProvider,System.String,System.Object)

我暂时关闭了自定义错误,因此可以在此处看到完整的堆栈跟踪

错误源自这行代码:

string selectExpression = String.Format(CultureInfo.InvariantCulture,MethodExpression,GetMemberName(reflectActionDescriptor.MethodInfo));

这里的第96行

完整的源代码可以在GitHub找到

我甚至不确定这个去哪里.

在此先感谢您的帮助.

c# asp.net azure asp.net-web-api2

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

VS 2015 CTP - JavaScript语言运行时崩溃

我在Visual Studio 2015中打开任何JavaScript文件后立即收到以下错误.

JavaScript语言服务遇到错误并已关闭.请保存更改,退出并重新启动Visual Studio.

JavaScript语言服务的输出窗口中没有错误.我不知道哪里开始调试......

我已将VS设置重置为默认值,删除了网络必需品,并删除了resharper,它完全没有任何区别.

visual-studio-2015

10
推荐指数
1
解决办法
1164
查看次数

使用Visual Studio 2015时,TaskAwaiter不实现INotifyCompletion

我有一个旧的ASP.NET Web Form项目,我需要添加一个异步库.我已将其升级到.NET Framework v4.5.1.它运行并与Visual Studio 2013完美编译.

但是,当我用Visual Studio 2015打开它时,它不会编译.每个异步调用都有TaskAwaiter does not implement INotifyCompletion错误.

例如,以下代码:

public async Task AsyncDelay()
{
    await Task.Delay(1);
}
Run Code Online (Sandbox Code Playgroud)

抛出以下错误:

CS4027'TaskAwaiter'没有实现'INotifyCompletion'

任何帮助都将不胜感激.

c# async-await visual-studio-2013 visual-studio-2015

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

无法推送到Google容器注册表(无法访问存储库)

每当我尝试从本地计算机将容器推送到Google容器注册表时,我都会收到以下错误:

否认:无法访问存储库; 请检查您是否有权访问它.

如果我打开Cloud Shell,我可以毫无问题地推送容器.我曾多次尝试过"gcloud auth login",似乎没有任何区别.我在本地运行其他gcloud命令没有任何问题.任何帮助将不胜感激.

google-container-registry

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

Ubuntu 16.10上的OmniSharp-VIM,OmniSharp-Roslyn和dotnet核心 - 语法检查无法识别C#6并需要解决方案文件

我正在尝试为dotnet核心开发设置我的Ubuntu机器.我已经精心安装了Omnisharp-vim并将其设置为与OmniSharp-Roslyn服务器配合使用.我也安装了Syntastic和YouCompleteMe.我正在进行语法检查和Intellisense.我有两个问题:

  1. 没有解决方案文件,Omnisharp-vim无法运行.Dotnet核心项目不必拥有解决方案文件.我该如何解决这个问题?

  2. 我收到有效C#6代码的语法错误.例如,它无法识别nameof运算符.

c# vim syntastic omnisharp .net-core

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

从 dotnet core 中的日志中编辑 SSN

我\xe2\x80\x99m 构建一个 dotnet 核心应用程序,我需要从日志中编辑社会安全号码。目前,该应用程序正在使用控制台记录器。这有最佳实践吗?本质上,我想为控制台记录器创建一个适配器,用于拦截日志消息,编辑社会安全号码,并将其发送到控制台记录器。就像下面的代码一样。

\n\n
public class LogRedactor : ILogger\n{\n    private static readonly Regex SsnRegex = new Regex("<SSN>(.*)</SSN>", RegexOptions.Compiled);\n    private readonly ILogger _logger;\n\n    public LogRedactor(ILogger logger)\n    {\n        _logger = logger;\n    }\n\n    public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception,\n        Func<TState, Exception, string> formatter)\n    {\n        if (state is FormattedLogValues)\n            _logger.Log(logLevel, eventId, state, exception,\n                (o, e) => SsnRegex.Replace(o.ToString(), "<SSN>REDACTED</SSN>"));\n        else\n            _logger.Log(logLevel, eventId, state, exception, formatter);\n    }\n\n    public bool IsEnabled(LogLevel logLevel)\n    {\n        return _logger.IsEnabled(logLevel);\n    }\n\n    public IDisposable BeginScope<TState>(TState state)\n    {\n        return …
Run Code Online (Sandbox Code Playgroud)

c# logging dependency-injection .net-core

5
推荐指数
0
解决办法
293
查看次数

创建新任务是否会生成后台线程或线程池线程

我正在尝试为ASP.NET应用程序创建数据库调用异步.如果我理解正确,我不想利用线程池线程进行异步I/O调用,这样我就可以保持线程池处理请求.下面的代码会从我的线程池中剔除一个线程还是生成一个后台线程?

    public IEnumerable<dynamic> DbCall(string sql)
    {
        return // DB Operation;
    }

    public Task<IEnumerable<dynamic>> DbCallAsync(string sql)
    {
        var task = new Task<IEnumerable<dynamic>>(() => this.DbCall(sql));
        task.Start();
        return task;
    }
Run Code Online (Sandbox Code Playgroud)

c# asp.net multithreading async-await

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