C# LINQ to SQL不支持强制转换?

C# LINQ to SQL不支持强制转换?,c#,.net,inheritance,linq-to-sql,casting,C#,.net,Inheritance,Linq To Sql,Casting,如果我这样做: User userOOM = new User(); userOOM.Nickname = "markzzz"; UserFacebook userFacebook = new UserFacebook(); userFacebook.first_name = "marco"; db.User.InsertOnSubmit(userOOM); userOOM.UserFacebook.Add(userFacebook); db.SubmitChanges(); User

如果我这样做:

User userOOM = new User();
userOOM.Nickname = "markzzz";

UserFacebook userFacebook = new UserFacebook();
userFacebook.first_name = "marco";

db.User.InsertOnSubmit(userOOM);
userOOM.UserFacebook.Add(userFacebook);
db.SubmitChanges(); 
User userOOM = new User();
userOOM.Nickname = "markzzz";

UserFacebookCatcher userCatched = new UserFacebookCatcher();
UserFacebook userFacebook = (UserFacebook)userCatched;
userFacebook.first_name = "marco";

db.User.InsertOnSubmit(userOOM);
userOOM.UserFacebook.Add(userFacebook);
db.SubmitChanges(); 
插入是完美的,它的工作。但是,如果我这样做:

User userOOM = new User();
userOOM.Nickname = "markzzz";

UserFacebook userFacebook = new UserFacebook();
userFacebook.first_name = "marco";

db.User.InsertOnSubmit(userOOM);
userOOM.UserFacebook.Add(userFacebook);
db.SubmitChanges(); 
User userOOM = new User();
userOOM.Nickname = "markzzz";

UserFacebookCatcher userCatched = new UserFacebookCatcher();
UserFacebook userFacebook = (UserFacebook)userCatched;
userFacebook.first_name = "marco";

db.User.InsertOnSubmit(userOOM);
userOOM.UserFacebook.Add(userFacebook);
db.SubmitChanges(); 
(因此,我抛出了
userFacebook
类)我得到了一个
对象引用,没有设置为对象的实例。
异常。如果我删除以下内容,它将起作用:

userOOM.UserFacebook.Add(userFacebook);
所以铸造是个问题
UserFacebookCatcher
没有什么特别之处:

public class UserFacebookCatcher : UserFacebook
{
    public UserFacebookCatcher()
    {
        this.first_name = "marco"
    }
}

如果我继承了一个类,LINQ到SQL就不起作用了?

1)这里不需要显式转换;它可以隐式转换。2) 哪一行抛出异常?1)即使我做了
UserFacebook UserFacebook=userCatched我得到了例外。2) 
db.SubmitChanges()上的行
另外,如果我在
userFacebook
字段中查看debug,则
名字是“marco”,因此它不是空的@markzzz,你已经确保你熟悉了?嗯,那篇文章的内容是什么?它解释了新类上的查询和成瘾参数。我只是在它里面,填充构造函数中父类的字段:O