小编Joh*_*rne的帖子

是否有键盘快捷键在Visual Studio 2010中的方法之间移动光标?

是否有任何键盘快捷键在Visual Studio中的方法之间移动光标?有没有可以做同样工作的插件?

我编程的所有时间,我想在当前方法的末尾,如果我可以有一个快捷方式,可以在下一个方法的开头移动光标,然后只需键入几个向上箭头我想要的地方会很棒.

谢谢.

plugins keyboard-shortcuts visual-studio-2010 visual-studio-extensions

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

如何自动刷新SQL Server Management Studio智能感知缓存?

在SQL Server Management Studio中,如果用户创建新的表列,表等,则用户需要使用CTRL+ Shift+ 刷新IntelliSense缓存R.

是否有设置或某种方式来自动化它,以便它可以在插入新表后立即自动刷新等?

sql-server intellisense ssms refresh

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

为什么EF返回代理类而不是实际实体?

当我想要实际的实体类时,我遇到了实体框架返回代理的问题.我第一次运行我的代码时,一切运行正常(没有代理),但每次迭代之后,我的一个DbSets总是返回代理而不是实际类型.

我在每次迭代后处理上下文,所以我不明白为什么第一次通过它工作,并且每次都没有.

我的代码在这一行失败了.我的所有POCO都设置了Table属性,但因为它返回了一个代理类,所以没有table属性.

TableAttribute attrib = (TableAttribute)attributes.Single();
Run Code Online (Sandbox Code Playgroud)

DbContext中有一些幕后静态魔法在我摧毁对象后生活吗?

我使用以下内容将对象移动到内存中

MajorClasses = ctx.MajorClasses.ToArray();
Run Code Online (Sandbox Code Playgroud)

我也试过了

MajorClasses = ctx.MajorClasses.AsNoTracking().ToArray();
Run Code Online (Sandbox Code Playgroud)

在我的OnModelCreating中,我有以下设置

base.Configuration.ProxyCreationEnabled = false;
            base.Configuration.LazyLoadingEnabled = false;
Run Code Online (Sandbox Code Playgroud)

c# entity-framework

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

如何在Razor中的ActionLinks上指定css类名?

以下代码生成错误:

@Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });
Run Code Online (Sandbox Code Playgroud)

我尝试使用@,因为它class是一个关键字.使用剃须刀时应该怎么写呢?

编辑

问题不是真正的符号,但是我没有和我一起使用块if:

@if (blabla)
    @Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });
Run Code Online (Sandbox Code Playgroud)

作品:

@if (blabla)
{
    @Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });
}
Run Code Online (Sandbox Code Playgroud)

因为他们让我意识到这个问题所以投了两个答案.

asp.net-mvc razor

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

如何在ASP.NET Core中实现复选框列表?

我希望在ASP.NET Core中实现一个checkboxlist,但我遇到了一些困难.

我的ViewModel:

public class GroupIndexViewModel
{
    public Filter[] Filters { get; set; }
}

public class Filter
{
    public int Id { get; set; }
    public string Name { get; set; }
    public bool Selected { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的看法:

@model GroupIndexViewModel
<form asp-action="Index" asp-controller="Group" method="get">
  <ul>
  @for (var i = 0; i < Model.Filters.Length; i++)
  {
    <li>
      <input type="checkbox" id="@Model.Filters[i].Name" asp-for="@Model.Filters[i].Selected" value="@Model.Filters[i].Selected" checked="@Model.Filters[i].Selected" />
      <label for="@Model.Filters[i].Name">@Model.Filters[i].Name</label>
    </li>
  }
  </ul>
  <button type="submit" name="action">Filtrer</button>
</form>
Run Code Online (Sandbox Code Playgroud)

发布到我的控制器时,我的viewmodel中的Filter属性显示为false,即使它在视图中被选中.

c# asp.net-core

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

如何在单元测试中使用Moq和DbFunction来防止NotSupportedException?

我目前正在尝试对通过实体框架运行的查询运行一些单元测试.查询本身在实时版本上运行没有任何问题,但单元测试总是失败.

我把它缩小到我对DbFunctions.TruncateTime的使用,但我不知道如何通过这种方式来获得单元测试以反映实时服务器上发生的情况.

这是我正在使用的方法:

    public System.Data.DataTable GetLinkedUsers(int parentUserId)
    {
        var today = DateTime.Now.Date;

        var query = from up in DB.par_UserPlacement
                    where up.MentorId == mentorUserId
                        && DbFunctions.TruncateTime(today) >= DbFunctions.TruncateTime(up.StartDate)
                        && DbFunctions.TruncateTime(today) <= DbFunctions.TruncateTime(up.EndDate)
                    select new
                    {
                        up.UserPlacementId,
                        up.Users.UserId,
                        up.Users.FirstName,
                        up.Users.LastName,
                        up.Placements.PlacementId,
                        up.Placements.PlacementName,
                        up.StartDate,
                        up.EndDate,
                    };

        query = query.OrderBy(up => up.EndDate);

        return this.RunQueryToDataTable(query);
    }
Run Code Online (Sandbox Code Playgroud)

如果我注释掉带有DbFunctions的行,则测试全部通过(除了检查只运行给定日期的有效结果的那些).

有没有办法可以提供在这些测试中使用的DbFunctions.TruncateTime的模拟版本?本质上它应该只返回Datetime.Date,但在EF查询中不可用.

编辑:这是使用日期检查失败的测试:

    [TestMethod]
    public void CanOnlyGetCurrentLinkedUsers()
    {
        var up = new List<par_UserPlacement>
        {
            this.UserPlacementFactory(1, 2, 1), // Create a user placement that is current
            this.UserPlacementFactory(1, 3, 2, …
Run Code Online (Sandbox Code Playgroud)

c# unit-testing entity-framework moq

27
推荐指数
2
解决办法
8160
查看次数

.Net Blazor优于Angular,React或其他JavaScript框架

微软.Net Blazor的主要特点是什么?我们可以用它代替React或Angular吗?Blazor会提供Angular或React提供的所有工具吗?

c# asp.net-core blazor

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

我应该如何在.NET Core 1.1或更高版本下使用Mocking和Fakes?

我已经使用.NET Framework 4.X多年了,我刚刚切换到.NET Core.由于我想做TDD,我想使用模拟框架和微软假货.但是,我不清楚如何为.NET Core做到这一点,因为不支持经典解决方案.

有人能告诉我如何在.NET Core 1.1下使用Mocking和Fakes吗?

unit-testing mocking microsoft-fakes asp.net-core

24
推荐指数
1
解决办法
3117
查看次数

什么是C#相当于Java的Throwable?

什么是C#相当于Java Throwable

在Java中,调用异常类层次结构的根Throwable,而不是 Exception.该Throwable基类有两个派生类:

Exception:对于合理的应用程序可能想要捕获的条件.

Error:对于一个合理的程序不应该试图抓住的严重问题.

因此Throwable基类包含合理程序不应该尝试捕获的问题.

c# java exception throwable

19
推荐指数
1
解决办法
9314
查看次数

为什么我的测试在一起运行时失败,但是单独传递?

当我在Visual Studio中编写测试时,我通过在Nunit中保存,构建然后运行测试来检查它是否有效(右键单击测试然后运行).

测试工作正常...所以我继续......

现在我已经编写了另一个测试,它可以像我上面保存和测试一样工作.但是,当它们一起运行时,它们不起作用.

以下是我的两个测试,这些测试在作为个体运行时有效但在一起运行时失败:

using System;
using NUnit.Framework;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium;

namespace Fixtures.Users.Page1
{
    [TestFixture]
    public class AdminNavigateToPage1 : SeleniumTestBase
    {
        [Test]
        public void AdminNavigateToPage1()
        {
            NavigateTo<LogonPage>().LogonAsCustomerAdministrator();
            NavigateTo<Page1>();
            var headerelement = Driver.FindElement(By.ClassName("header"));

            Assert.That(headerelement.Text, Is.EqualTo("Page Title"));
            Assert.That(Driver.Url, Is.EqualTo("http://localhost/Page Title"));
        }

        [Test]
        public void AdminNavigateToPage1ViaMenu()
        {
            NavigateTo<LogonPage>().LogonAsCustomerAdministrator();
            Driver.FindElement(By.Id("menuitem1")).Click();
            Driver.FindElement(By.Id("submenuitem4")).Click();
            var headerelement = Driver.FindElement(By.ClassName("header"));

            Assert.That(headerelement.Text, Is.EqualTo("Page Title"));
            Assert.That(Driver.Url, Is.EqualTo("http://localhost/Page Title"));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当第二次测试失败时,因为它们一起运行

Nunit介绍了这个:

Sse.Bec.Web.Tests.Fixtures.ManageSitesAndUsers.ChangeOfPremises.AdminNavigateToChangeOfPremises.AdminNavigateToPageChangeOfPremisesViaMenu:OpenQA.Selenium.NoSuchElementException:找不到元素

这一行突出显示:

var headerelement = Driver.FindElement(By.ClassName("header"));
Run Code Online (Sandbox Code Playgroud)

有没有人知道为什么我的代码在一起运行时失败,但在单独运行时通过?

任何答案将不胜感激!

c# selenium-ide visual-studio-2010 nunit-2.5

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