小编Jam*_* L.的帖子

Debug Console窗口在调试期间无法接受Console.ReadLine()输入

VSCode版本:1.8.0

操作系统版本:Win10 x64

重现步骤:

  1. 使用"dotnet new"创建一个新的.net核心cli应用程序
  2. 使用VS代码打开文件夹
  3. 在Program.cs中添加两行代码

    string a = Console.ReadLine(); Console.WriteLine(一);

  4. 切换到VS代码调试窗口并开始调试,显示调试控制台窗口,并显示第一个"Hello,World".输出,并在Console.ReadLine()行停止,在调试控制台中输入任何内容,然后按Enter键将显示错误消息"由于进程正在运行,无法执行此操作".

问题是在调试期间如何以及在何处输入Console.ReadLine()接受的文本,如果我打开一个新的cmd.exe并执行"dotnet run"它工作正常,但在Visual Studio Code Debug Console中它无法正常工作.

visual-studio-code

8
推荐指数
1
解决办法
4479
查看次数

.NET Core 1.1中的FileStream/StreamWriter没有Close()方法

我正在使用.net核心1.1,以前当我使用.net框架时,我通常Close()FileStream完成流操作后调用或者任何Stream,但是FileStream.net核心1.1中的类没有Close方法,我发现Dispose()但是不知道它是否相同.有人想让我知道正确关闭FileStream/StreamWriter.net核心中新类的正确方法吗?

c# dispose stream .net-core

7
推荐指数
1
解决办法
4272
查看次数

在 ASP.NET MVC Core Web API 和 Entity Framework Core 中使用 TryUpdateModel 更新模型不起作用

我是 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不起作用,更改没有更新到数据库。

我想知道:

  1. 如果TryUpdateModelAsync可以在MVC Web API 中使用?

  2. 我真的不想写像下面这样无聊的代码,如何避免从一个对象到另一个相同类型的对象进行属性值设置?(这是我使用的第一个原因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 …

entity-framework-core asp.net-core-mvc asp.net-core-webapi

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