我是Entity Framework的新手,而不是精通C#或MVC3,但我正在努力。
我能够关注this tutorial并根据我的具体需求对其进行修改,这对于列出项目非常有用。
现在我尝试使用相同的原理向我的实体添加一个新行。但是,我不太清楚如何去做。真的,我唯一不理解的部分是这个类应该是什么类型。
public ???? CreateNewCollection(long id, Collection collection) {
var newCollection = new UserCollection {
uid = id,
CollectionName = collection.Name,
Type = db.CollectionTypes.Where(t => t.CollectionTypeName == collection.Type).First().ctypeid,
CreateDate = DateTime.Now
};
db.UserCollections.AddObject(newCollection);
db.SaveChanges();
return ???;
}
答案 0 :(得分:3)
这是一种方法,因为你正在执行一个动作而你看起来不希望返回任何东西,你可以只标记????如void
并删除return语句。
这当然需要在一个类中,并且允许您在不实例化类的情况下调用该方法,您可以将该方法标记为静态。
因此:
public static class MyCollectionRepo
{
public static void CreateNewCollection(long id, Collection collection) {
var newCollection = new UserCollection {
uid = id,
CollectionName = collection.Name,
Type = db.CollectionTypes.Where(t => t.CollectionTypeName == collection.Type).First().ctypeid,
CreateDate = DateTime.Now
};
db.UserCollections.AddObject(newCollection);
db.SaveChanges();
}
}