目前我的部分有3个字段(Name,Value1,Value2)。我有一切工作,我可以在零件上创建/编辑/删除。
我现在要做的是拥有一个包含3列(Name,Value1,Value2)的网格,并且可以有多行(最多为用户有多少行)。保存不会发生,直到用户完成(将一行中的所有行保存回来)。
我还没想到需要什么,所以一系列的项目会在回发后保存。
有关如何执行此操作的任何建议吗?
谢谢!
答案 0 :(得分:0)
你可以拥有的是通过让你的dbms创建和管理一对一关系来在部分中包含与(Name,Value1,Value2)相对应的记录集合。
例如,你会有
public class ThisIsYourPart : ContentPart<ThisIsYourPartRecord> {
// You can access the list of your records as
// yourPart.Record.YourRecords
}
public class ThisIsYourPartRecord : ContentPartRecord {
public ThisIsYourPartRecord () {
YourRecords= new List<YourRecordWithValues>();
}
public virtual IList<YourRecordWithValues> YourRecords{ get; set; }
}
public class YourRecordWithValues {
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual string Value1 { get; set; } // use your actual type
public virtual ThisIsYourPartRecord ThisIsYourPartRecord { get; set; }
}
public class YourMigration : DataMigrationImpl {
public int Create() {
SchemaBuilder.CreateTable("YourRecordWithValues ", table => table
.Column<int>("Id", col => col.Identity().PrimaryKey())
.Column<string>("Name", col => col.NotNull().Unlimited())
.Column<string>("Value1", col => col.NotNull().Unlimited())
.Column<int>("ThisIsYourPartRecord_Id"));
SchemaBuilder.CreateTable("ThisIsYourPartRecord", table => table
.ContentPartRecord());
}
}
这样的代码应该这样做。
我们在https://github.com/bleroy/Nwazet.Commerce
中经常使用这种关系*编辑: 当然,将所有代码放在适当的文件和文件夹中。