小编Dra*_*ica的帖子

Visual Studio 2015 XAML文件冻结

我最近更新了从2013年到2015年的VS版本.我在WPF上工作,显然,我必须修改*.xaml文件; 每次我离开.xaml文件时,Visual Studio会冻结大约15-20秒.我不能那样工作!我已经卸载了Reshaper,但没有改变.我甚至关闭了设计师的流程,但仍然没有成功.

当我尝试在没有管理权限的情况下运行VS时,它会冻结甚至更多(大约30秒).如果我尝试用VS2013打开相同的解决方案,它的效果非常好.

电台详细信息:12 GB RAM,i7 2.5GHz,SSD,Windows 10 x64

有没有人面临同样的问题?怎么解决?!

c# wpf visual-studio visual-studio-2015

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

使用 IMiddleware 时添加自定义中间件不起作用

我正在尝试向管道添加自定义中间件(为了更容易,我将选择 .NET Core 文档示例)。假设我们希望在调用 API 时设置西班牙文化。这是完美运行的代码:

public class RequestCultureMiddleware
{
    private readonly RequestDelegate _next;

    public RequestCultureMiddleware(RequestDelegate next)
    {
        _next = next;
    }

    public async Task InvokeAsync(HttpContext context)
    {
        CultureInfo.CurrentCulture = new CultureInfo("es-ES");
        CultureInfo.CurrentUICulture = new CultureInfo("es-ES");

        // Call the next delegate/middleware in the pipeline
        await _next(context);
    }
}

public static class RequestCultureMiddlewareExtensions
{
    public static IApplicationBuilder UseRequestCulture(
        this IApplicationBuilder builder)
    {
        return builder.UseMiddleware<RequestCultureMiddleware>();
    }
}
Run Code Online (Sandbox Code Playgroud)

和启动类:

public class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }

    public IConfiguration …
Run Code Online (Sandbox Code Playgroud)

.net c# .net-core asp.net-core asp.net-core-middleware

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

FirstOrDefault在外键上返回null

可以说我们有以下型号:

public class ReadingOrder
{
    public virtual int Id { get; set; }
    public virtual Order Order { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

制图:

Table("db_ReadingOrder");
Id(o => o.Id).Column("Id").GeneratedBy.Identity();
References(o => o.Order, "OrderId");
Run Code Online (Sandbox Code Playgroud)

我想获得ReadingOrder它具有orderId与1(例如)相等.但是当我尝试a时FirstOrDefault,查询返回null:

var readingO = _repositoryFactory.GetRepository<ReadingOrder>().FirstOrDefault(xz => xz.Order.Id == 1);
Run Code Online (Sandbox Code Playgroud)

如果我得到所有这些并在申请FirstOrDefault作品后,但它的愚蠢:

var readingOrderList1 = _repositoryFactory.GetRepository<ReadingOrder>()
                         .GetAll().FirstOrDefault(xz => xz.Order.Id == 1);
Run Code Online (Sandbox Code Playgroud)

存储库中的方法具有以下格式:

public T FirstOrDefault(Expression<Func<T, bool>> predicate)
{
   return _session.Query<T>().FirstOrDefault(predicate);
}
Run Code Online (Sandbox Code Playgroud)

简单的东西,但不工作.如果我去寻找一个正常的房产,那么Id一切都按预期进行.此外,如果我从日志中获取生成的查询并将其放在sqlite中,它将成功运行并返回读取顺序.NHibernate有错误吗?是映射问题吗?或者是SQLite的问题?

c# nhibernate fluent-nhibernate

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

无法在本地主机上的 docker 容器之间进行通信

首先,我是 docker 容器的新手,我不太了解它们是如何运行的,但我有这样的设置:

  • 一个用于 .NET Core API 的 Docker 容器(由 VS-2019 自动生成的 Docker 文件)
  • 用于 Angular 9 应用程序的一个 Docker 容器

该 API 可通过https://localhost:44384/api/weatherforecast 访问 容器化角度应用程序可通过https://localhost:4200访问

如果我在没有 docker 的情况下运行 Angular 应用程序,则在使用代理修复 CORS 问题后,我可以连接到https://localhost:44384/api/weatherforecast。但是,当我运行 dockerized 版本时,我收到以下错误:

Failed to load resource: the server responded with a status of 504 (Gateway Timeout)
Run Code Online (Sandbox Code Playgroud)

在 VS 控制台中我看到以下错误:

clearance_1  | [HPM] Error occurred while trying to proxy request /api/weatherforecast from loccoalhost:4200 to https://localhost:44384 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)
Run Code Online (Sandbox Code Playgroud)

这似乎是一个连接问题,所以我在互联网上进行了一些挖掘,并尝试将这两个容器置于同一网络下。

步骤如下: 1. 创建桥接“测试”网络

docker network create test …
Run Code Online (Sandbox Code Playgroud)

core-api docker docker-compose angular docker-network

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

Angular 14 反应形式 addControl 不起作用

我最近迁移到 Angular 14,当尝试从控件动态添加新内容时,这行代码抛出异常:

formGroup.addControl("agreement", new FormControl(""));
Run Code Online (Sandbox Code Playgroud)

错误:

error TS2769: No overload matches this call. 
FormControl<...>; }>' is not assignable to method's 'this' of type 'FormGroup<{ [key: string]: AbstractCont
Run Code Online (Sandbox Code Playgroud)

rol<任意,任意>;}>'。....

当将鼠标悬停在错误线上时,我收到以下文本:

向该组添加一个控件。在强类型组中,控件必须属于该组的类型(可能作为可选键)。如果给定名称的控件已存在,则不会用新控件替换它。如果要替换现有控件,请使用 FormGroup#setControl setControl 方法。此方法还更新控件的值和有效性。 有解决方法吗?

请在这里找到问题:stackblitz demo

更新

这是导致问题的完整代码:

 private test_formGroup() {
    const formGroup = new FormGroup({
      requestReference: new FormControl(''),
      emailRecipient: new FormControl([Validators.required, Validators.email]),
      emailBodyMessage: new FormControl('', Validators.required),
      requestDetails: new FormControl(''),
    });

    if (true) {
      //real condition here
      formGroup.addControl('termsOfAgreement', new FormControl(''));
    }
  }
Run Code Online (Sandbox Code Playgroud)

如果我在 FormGroup 生成中添加控件,它会起作用:

  const formGroup …
Run Code Online (Sandbox Code Playgroud)

angular

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