小编Zor*_*goZ的帖子

ASP.NET Core 6 MVC 中的 DateOnly 绑定问题

我尝试DateOnly在 .NET 6 中使用新类型,但在模型绑定方面遇到了问题。完全正规的数据形式如下:

在此输入图像描述

被解析为“0001.01.01”并被活页夹接受为有效。

全部更换DataOnly为旧的DateTime立即解决了这个问题。

这可能是 BCL 中的错误,还是我在这里遗漏了一些意图?除了实现自定义模型绑定器之外,还有其他解决方法吗?

asp.net-core-mvc .net-6.0

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

Visual Studio 2022 未找到用于脚手架的代码生成器

相关:aspnet-codegenerator:没有可用的代码生成器,即使添加 Microsoft.VisualStudio.Web.CodeGeneration.Design 后也是如此

我遇到了与链接问题中提出的相同问题,但使用 Visual Studio 2022 和 dotNet 6。使用带有视图的 MVC 控制器的脚手架控制器,使用实体框架失败: 在此输入图像描述 但是,具有读/写操作的 MVC 控制器会成功。但之后添加view任何操作同样会失败: 在此输入图像描述

我已执行链接帖子中建议的所有操作。看来我有正确的版本:

Tool 'dotnet-aspnet-codegenerator' was reinstalled with the latest stable version (version '6.0.2').

可用代码生成器的列表看起来包括所有内容: 在此输入图像描述

更新:不过可以从命令行工作。

asp.net-core-mvc asp.net-core .net-6.0 visual-studio-2022

6
推荐指数
0
解决办法
1405
查看次数

如何使用 RX 实现超时序列?

场景如下:如果设备在短时间内回调到服务器,则认为设备已连接。我想创建一个类来封装跟踪此状态的功能。调用设备时,应重置超时。回调时,连接被确认,状态应设置为true,如果回调超时,则应设置为false。但是下次调用应该可以重新设置超时时间,不管当前状态如何。

我想通过 RX 使用swith和来实现这一点timeout。但我不知道为什么它停止工作。

public class ConnectionStatus
{
private Subject<bool> pending = new Subject<bool>();
private Subject<bool> connected = new Subject<bool>();

public bool IsConnected { get; private set; }

public ConnectionStatus(CancellationToken token, short timeoutSeconds = 15)
{
    pending.Select(outer => connected.Timeout(TimeSpan.FromSeconds(timeoutSeconds))) 
        .Switch()
        .Subscribe(_ => IsConnected = true, e => IsConnected = false, token);
}

public void ConfirmConnected()
{
    connected.OnNext(true);
}

public void SetPending()
{
    pending.OnNext(true);
}
}
Run Code Online (Sandbox Code Playgroud)

这是“测试用例”:

var c = new ConnectionStatus(default(CancellationToken));

c.SetPending(); …
Run Code Online (Sandbox Code Playgroud)

c# system.reactive .net-4.6

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

使用JQuery的简单添加功能

我试图在jQuery中编写一个非常简单的函数,在其中我将两个输入字段(类型文本)的输入值相加并输出结果。

我得到NaN或没有结果。已经使用parseInt()尝试过,但是也没有成功。

我究竟做错了什么?

function output() {
        var stellplaetze = $('.stellplaetze').val();
        var miete = $('.miete').val();
        var result = stellplaetze * miete * 30;
        $('.result').html(
          '<strong class="text-uppercase">Ertrag pro Monat: </strong><br> ' +
            result +
            ' EUR'
        );
      }
      
$(function() {
    // Trigger the function
    $('button').on('click', function() {
      output();
      $('#ertragsrechner .result').css('opacity', 1);
    });
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="formbody">
        <input type="hidden" name="FORM_SUBMIT" value="auto_form_5">
        <input type="hidden" name="REQUEST_TOKEN" value="pC9vYIP8oBzVONQiwg-ixrLwDhEdK0LA8-5n-6kQJPw">
        <div class="widget widget-text stellplaetze">
            <input type="text" name="stellplaetze" id="ctrl_12"
                class="text stellplaetze form-control flex-fill mr-0 mr-sm-2 mb-3" value=""
                placeholder="Anzahl …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

解决 System.Web.Http 中的 CS0121

这段代码:

Request.CreateResponse(HttpStatusCode.PartialContent);
Run Code Online (Sandbox Code Playgroud)

产生以下编译错误:

错误 CS0121 调用在以下方法或属性之间不明确:“System.Net.Http.HttpRequestMessageExtensions.CreateResponse(System.Net.Http.HttpRequestMessage, System.Net.HttpStatusCode)”和“System.Web.Http.HttpRequestMessageCommonExtensions.CreateResponse” (System.Net.Http.HttpRequestMessage, System.Net.HttpStatusCode)'

两者都在System.Net.Http命名空间中,一个在System.Web.Http程序集中,另一个在,System.Net.Http.Formatting但我需要它们都作为参考。System.Net.Http.HttpRequestMessageExtensions两个程序集中都存在更糟糕的类。

作为一种解决方法,我可以使用这个重载,它似乎只出现在其中一个中:

Request.CreateResponse<object>(HttpStatusCode.PartialContent, null);
Run Code Online (Sandbox Code Playgroud)

但是有没有其他方法可以解决冲突呢?

[重现步骤]

  1. 创建控制台应用程序
  2. 添加引用 System.Net.Http
  3. 添加对System.Net.Http.Formattingfrom NuGet的引用
  4. 添加 using System.Net.Http
  5. 添加 var req = new HttpRequestMessage();
  6. 尝试添加 req.CreateResponse(HttpStatusCode.OK);
  7. 您应该会看到 12 个扩展方法重载。有些是重复的,这就是问题所在。

c# asp.net-web-api2

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