Asp.net core mvc 将单个对象从控制器传递到视图

Asp.net core mvc 将单个对象从控制器传递到视图,asp.net-core-mvc,entity-framework-core,asp.net-core-2.0,Asp.net Core Mvc,Entity Framework Core,Asp.net Core 2.0,我有一个使用.netcore2和实体框架构建的基于网络的游戏 这个游戏很有效,但我刚刚添加了一个新功能。在其中一个视图中,用户可以按下按钮,通过控制器创建新角色 以下是控制器方法: public async Task<IActionResult> AddCharacter(Guid playerId) { ICharManagement charMgr = new CharManagementClient(); Character ne

我有一个使用.netcore2和实体框架构建的基于网络的游戏

这个游戏很有效,但我刚刚添加了一个新功能。在其中一个视图中,用户可以按下按钮,通过控制器创建新角色

以下是控制器方法:

   public async Task<IActionResult> AddCharacter(Guid playerId)
    {
        ICharManagement charMgr = new CharManagementClient();

        Character newCharacter = await charMgr.AddCharacterAsync(
            "Test Character",
            new Guid("1e957dca-3fe1-4214-b251-a96e0106997a")
            );

        var newCharacterObject = newCharacter;
        return View(newCharacterObject);
    }

    The Character object is from an API I use and it looks like this:

        public partial class Character : object
    {
        private System.Guid Id;
        private string Name;
        private System.Nullable<System.DateTime> DateCreated;
        private int32 CharPlayer;
        private bool Playable;
    }
在我的视图(cshtml)中,我将模型设置为:

    @model IEnumerable<Character>
@model IEnumerable
但是,当我运行它时,会出现以下错误:

InvalidOperationException:传递到 ViewDataDictionary的类型为“Character”,但此 ViewDataDictionary实例需要类型为的模型项 'System.Collections.Generic.IEnumerable'1[字符]'

那么,如何让视图显示单个字符对象(newCharacterObject),或者如何将“newCharacterObject”转换为视图所需的内容

谢谢


编辑:格式化

如果您只需要一个字符模型,您可以在cshtml顶部使用
@model character

IEnumerable用于迭代对象集合。

是否重用视图(因此您有一个
IEnumerable
)?如果是这样,您可以将返回的模型包装成类似于
列表的内容
    @model IEnumerable<Character>