c# - c#不能隐式转换类型
问题描述
我想返回referencesModel 对象,但我收到关于对象类型的错误。还有另一种方法可以做到这一点吗?
public ActionResult Edit(string index)
{
var selectedReference = template.References.First(reference => reference.SortOrder == index);
ReferencesModel referencesModel = selectedReference;
return PartialView(referencesModel);
}
错误:(
局部变量)Data.Reference selectedReference
无法将类型“OrderTemplateTool.Data.Reference”隐式转换为“OrderTemplateTool.Web.Models.References.RederencesModel”
模型:
public class ReferencesModel
{
public int id { get; set; }
public string Link { get; set; }
public string Text { get; set; }
public string Type { get; set; }
public string Regimens { get; set; }
public Guid GuidlineId { get; set; }
public int SortOrder { get; set; }
}
解决方案
您可以将一些构造函数添加到您的 ReferenceModel 类。
public class ReferencesModel
{
public ReferencesModel()
{
}
public ReferencesModel(Reference reference)
{
this.Id = reference.Id;
this.Link = reference.Link;
this.Text = reference.Text;
this.Type = reference.Type;
this.Regimens = reference.Regimens;
this.GuidlineId = reference.GuidlineId;
this.SortOrder = reference.SortOrder;
}
public int Id { get; set; }
public string Link { get; set; }
public string Text { get; set; }
public string Type { get; set; }
public string Regimens { get; set; }
public Guid GuidlineId { get; set; }
public int SortOrder { get; set; }
}
并像这样使用它
public ActionResult Edit(string index)
{
var selectedReference = template.References.First(reference => reference.SortOrder == index);
ReferencesModel referencesModel = new ReferencesModel(selectedReference);
return PartialView(referencesModel );
}
推荐阅读
- excel - 为什么 keyDown(shift) 函数不适用于 Excel 自动化的 python pyautogui
- excel - 在列中找到一个字符串并返回并返回一个带有行号的数组
- c - 连接二进制数
- asp.net-mvc - MVC IPageList Paging 显示两个寻呼机控件
- azure - Windows 的容器组支持
- c++ - 具有嵌套依赖项的 CMake 2.8.12,导致多个“包含”
- android - 使用回收器视图在android studio中删除Xml文件中图像左侧的空间
- javascript - 从字符串 api 响应 aws lambda 中删除 '\'
- c - 将字母排列与字典 C 进行比较
- java - 是什么导致 JNI 错误“使用已删除的本地引用”?