问题描述
我想插入我的 UserCompany
对象到数据库trought一个方法。如元素传递给这个函数,把它和插入右表。
I'd like to insert my UserCompany
object into the database trought a single method. Such as passing the element to this function, take it and "insert in the right table".
通常在实体(如LINQ到XML)我不喜欢出头:
Usually in Entity (such as LINQ to XML) I do somethings like:
db.Company.UsersCompany.Add(UserCompany);
db.SubmitChanges();
但这里的问题是,我需要指定表 UsersCompany
和公司
使用前。新增()
。我想(因为我想要做一个函数的刀片,每种类型的对象/表)摆脱了这一点。如具有:
but the problem here is that I need to specify the table UsersCompany
and Company
before using the .Add()
.I'd like (since I want to do ONE function for the insert for each type of object/table) get rid of this. Such as having a:
UserCompany.InsertMySelf();
或
db.SmartAdd(UserCompany);
和它知道如何插入表格,在何处以及如何,自动。
and it know how to insert the table, where and how, automatically.
是否有可能这样做吗?有什么策略?
Is it possible to do this? Is there any strategies?
推荐答案
您可以解决这个泛型:
Public Sub AddEntities(Of TEntity)(entities As IEnumerable(Of TEntity))
For Each ent In entities
_db.Set(Of TEntity).Add(ent)
Next
_db.SaveChanges()
End Sub
抱歉用VB ... 在C#:
Sorry for using VB... In C#:
public void AddEntities<TEntity>(IEnumerable<TEntity> entities)
{
foreach(ent in entities)
{
_db.Set<TEntity>.Add(ent);
}
_db.SaveChanges();
}
这篇关于自动/智能插入&QUOT;本身&QUOT;目的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!