VSCode版本:1.8.0
操作系统版本:Win10 x64
重现步骤:
在Program.cs中添加两行代码
string a = Console.ReadLine(); Console.WriteLine(一);
切换到VS代码调试窗口并开始调试,显示调试控制台窗口,并显示第一个"Hello,World".输出,并在Console.ReadLine()行停止,在调试控制台中输入任何内容,然后按Enter键将显示错误消息"由于进程正在运行,无法执行此操作".
问题是在调试期间如何以及在何处输入Console.ReadLine()接受的文本,如果我打开一个新的cmd.exe并执行"dotnet run"它工作正常,但在Visual Studio Code Debug Console中它无法正常工作.
我正在使用.net核心1.1,以前当我使用.net框架时,我通常Close()在FileStream完成流操作后调用或者任何Stream,但是FileStream.net核心1.1中的类没有Close方法,我发现Dispose()但是不知道它是否相同.有人想让我知道正确关闭FileStream/StreamWriter.net核心中新类的正确方法吗?
我是 ASP.NET MVC Core Web API 和 EF Core 的新手,我正在创建一个简单的 MVC Web API 演示,如下所示。
[HttpPut("{id}")]
public async void Put(int id, [FromBody]Student student)
{
if (ModelState.IsValid)
{
var stu = _context.Students
.Where(s => s.StudentId == id)
.SingleOrDefault();
var updateResult = await TryUpdateModelAsync<Student>(stu, "", s => s.FirstName, s => s.LastName, s => s.EnrollmentDate);
_context.SaveChanges();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是这TryUpdateModelAsync不起作用,更改没有更新到数据库。
我想知道:
如果TryUpdateModelAsync可以在MVC Web API 中使用?
我真的不想写像下面这样无聊的代码,如何避免从一个对象到另一个相同类型的对象进行属性值设置?(这是我使用的第一个原因TryUpdateModelAsync)
stu.FirstName = student.FirstName;
stu.LastName = student.LastName;
stu.SomeOtherProperties = student.SomeOtherProperties;
_context.SaveChanges();
Run Code Online (Sandbox Code Playgroud).NET 核心版本:1.1.0
ASP.Net …