gpt4 book ai didi

c# - ModelState.IsValid 引发了 System.IO.FileLoadException 类型的异常

转载 作者:行者123 更新时间:2023-11-28 20:38:47 26 4
gpt4 key购买 nike

我有一个 .NET MVC 应用程序,我正在使用 NUnit 为其编写一些单元测试。

这是我目前正在测试的功能:

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Add(AddInstrumentViewModel model)
{
if (ModelState.IsValid)
{
var group = new FtpServerGroup
{
Disabled = true,
FtpLastPullTime = DateTime.Now,
FtpPullInterval = TimeSpan.Zero,
};

await db.CreateAsync(group, model.Address, model.Username, model.Password);

// go back to card view
var res = await db.GetAll();
return RedirectToAction("Index", res);
}

return View(model);
}

这是实际测试:

[Test]
public async Task Test()
{
var controller = new AutomaticTransferController(mockService.Object);

var model = new AddInstrumentViewModel
{
Address = "124.124.124.124",
Password = "123456",
Username = "John Foo"
};

var res = await controller.Add(model);
}

使用调试器我注意到,只要我进入 .Add() 方法,行 if (ModelState.IsValid) 就会抛出异常

ModelState.IsValid threw an exception of type System.IO.FileLoadException

事实上,它在没有告诉我何时何地的情况下抛出异常

编辑

这是我的 InstrumentViewModel 的代码

    using System.ComponentModel.DataAnnotations;

public class AddInstrumentViewModel
{
[Display(Name = "IP Address or Domain Name")]
[Required]
[RegularExpression(@"^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$")]
public string Address { get; set; }

[Display(Name = "FTP Username")]
[Required]
public string Username { get; set; }

[Display(Name = "FTP Password")]
[Required]
public string Password { get; set; }
}

最佳答案

我遇到了同样的问题。只需更新和整合 nuget 包。我不确定到底是哪个:)

关于c# - ModelState.IsValid 引发了 System.IO.FileLoadException 类型的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42397441/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com