entity-framework - 无法将类型 'TestLinq.UserData' 转换为 T'estLinq.userData'
问题描述
仍在研究 EF6 中的概念(学习) 这不是生产代码;只是为了学习...
我正在尝试从直接 SQL ODBC 调用迁移到 EF6,并尝试复制我目前在我的代码中使用的方法的功能。
考虑这段代码:
public class user
{
[Key]
public int pkID;
public string ForeignID;
public string UserName;
public virtual List<userData> UserDatas { get; set; }
}
public class userData
{
[Key]
public int pkID;
public int fkUserID;
public string ColumnName;
public string ColumnValue;
public bool IsOverrode;
public string OverrideValue;
}
class Program
{
static TestDataEntities db = new TestDataEntities();
static void Main(string[] args)
{
var record = db.Users.Select(x => new { x.UserName, x.pkID }).FirstOrDefault();
Console.WriteLine(record);
var record2 = db.Users.Include(x => x.UserDatas).FirstOrDefault();
record2.UserName = "JohnTestNew";
db.SaveChanges();
var ud = record2.UserDatas.Where(x => x.ColumnName.ToUpper().Contains("FIRSTNAME")).FirstOrDefault();
foreach (var item in record2.UserDatas)
Console.WriteLine(item.ColumnName);
Console.ReadLine();
}
static userData TestReturn()
{
var record2 = db.Users.Include(x => x.UserDatas).FirstOrDefault();
var ud = record2.UserDatas.Where(x => x.ColumnName.ToUpper().Contains("FIRSTNAME")).FirstOrDefault();
return (userData)ud;
}
最后一行出现编译错误:return (userData)ud; '无法将类型 'TestLinq.UserData' 转换为 'TestLinq.userData'
我有点理解发生了什么,但我想我可以在返回时选择课程。UserData 包含在返回的查询中,userData 是 UserData 的原始类。
有没有办法使用基类返回这个对象?
解决方案
推荐阅读
- java - java jersey 2.27在运行hello world代码时遇到问题
- javascript - chart.js 中的 X 轴时间刻度(小时格式)不起作用
- editor - 自定义编辑器反应数据网格
- json - SharePoint JSON 脚本的外观如何 其他列
- .net - FtpWebRequest - 在 URI 中设置端口 22
- php - Laravel json 请求全部
- email - 我没有收到来自 .media 域的电子邮件
- python-3.x - 类由空格分隔的四个部分组成
- amazon-web-services - 管理多个 AWS 控制台登录
- ios - 无法更新手表 OS 4 中的复杂功能