小编Ade*_*rov的帖子

Azure云服务上的Asp.Net Core MVC?

有很多关于Asp.Net Core 1.0及其跨平台功能的文章.我知道可以将它部署到Linux,OSX,Windows.我已经阅读了很多一步一步的文章如何做到这一点.但我仍然不知道如何在Azure项目中将其作为Cloud Service Web Role发布.

我有一个庞大的分布式系统,包括Web角色,工作者角色和缓存工作者角色.考虑到Asp.Net Core 1.0,我遇到了下一个问题:

  1. 是否可以将Asp.Net MVC Core站点部署为Azure项目的Web角色?或者我应该在工作者角色上主持它?
  2. 是否有适用于Linux的即用型Azure模拟器?换句话说,如果我决定在Linux上迁移和托管我的系统,如何用这个"跨平台"调试我的分布式系统?

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

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

如何使实体框架异步执行

我在ASP.Net MVC 5应用程序中遇到异步控制器问题.我正在使用Entity Framework 6 Code First方法.

我有一个方法

public async Task<ActionResult> Index()
{
    using(var context = new MyDbContext())
    {
        var eventsTask = context.Events
            .Where(e => e.Enable)
            .ToListAsync();

        var countTask = context.Users
            .CountAsync();

        await Task.WhenAll(eventsTask, countTask);
        return View(new ViewModel()
        {
            Events = eventsTask.Result, 
            Count = countTask.Result
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

我这里有两个异步方法.我通过MiniProfiler分别测量了它们.它们需要大约85毫秒.

但是在我的方法中,我使用Task.WhenAll()运行它们.我相信它以异步方式执行Db查询,并且两者都需要大约85-90毫秒.但它需要~170-180.所以我有异步方法同步运行(彼此跟随).

我认为这是因为背景.当我删除上下文查询并使用HttpClient调用许多api方法时,我有一个测试.它需要时间等于更长的时间(3 api调用,每个~500 ms.完全方法需要~600 ms).我相信可以异步执行EF方法.

有谁知道解决方案

c# asp.net-mvc asynchronous entity-framework

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

将 select2 显示为纯输入文本

select2在我的probject 中使用插件(最新版本4.0.2)进行自动完成。我发现select2只能应用于选择控件。主要问题是文本输入作为此控件的第一个选项放置(参见下面的 img)。

有什么方法可以放置文本输入而不是选择控件(如 typeahead 插件)?

一些截图(其实你可以在这里试试)

折叠(您只能在此处看到带有选定选项的标准选择 html 控件)

在此处输入图片说明

展开(文本输入位置作为选择控件的第一个选项,如果选择折叠则隐藏文本输入)

在此处输入图片说明

Typeahead(适用于直接输入文本,在页面始终显示的第一行输入查询文本)

在此处输入图片说明

jquery typeahead jquery-select2 select2

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

循环后是否需要调用“ yield break”?

在我的代码中,我有一个像这样的方法

public static IEnumerable<int> GetDiff(int start, int end)
{
    while (start < end)
    {
        yield return start;
            start++;
    }
    yield break; // do we need to call it explicitly?
}
Run Code Online (Sandbox Code Playgroud)

因此,我感兴趣的测试用例是GetDiff(1, 5)GetDiff(5, 1)。虽然很明显在第一种情况下会发生什么,但是还不清楚第二种情况下如何在没有yield break;after循环的情况下完成它

c#

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