通过Dapper利用数据集

时间:2019-03-07 21:17:17

标签: c# dapper

我想使用Dapper制作类列表,而不必定义所有类名称。我知道有点懒,但是Visual Studio已经定义了它。

因此,在Visual Studio中,我创建了一个数据集并添加了一个表。 VS生成的代码包括以下内容:

latin-1

因此,在我的方法中,我只想以此方式利用该代码:

    public partial class MyTableRow : global::System.Data.DataRow {

        private MyTableDataTable tableMyTable;

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]
        internal MyTableRow(global::System.Data.DataRowBuilder rb) : 
                base(rb) {
            this.tableMyTable = ((MyTableDataTable)(this.Table));
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]
        public string rectype {
            get {
                return ((string)(this[this.tableMyTable.rectypeColumn]));
            }
            set {
                this[this.tableMyTable.rectypeColumn] = value;
            }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]
        public string acctdet {
            get {
                return ((string)(this[this.tableMyTable.acctdetColumn]));
            }
            set {
                this[this.tableMyTable.acctdetColumn] = value;
            }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]
        public string acctdet2 {
            get {
                return ((string)(this[this.tableMyTable.acctdet2Column]));
            }
            set {
                this[this.tableMyTable.acctdet2Column] = value;
            }
        }

         etc, etc

然后使用Dapper填充列表的方法:

     // no errors on this
     public List<MyDataSet.MyTableRow > GridList  = new List<MyDataSet.MyTableRow >();

它可以编译,但是出现以下运行时错误:

MyDataSet + MyTableRow实现需要一个无参数的默认构造函数或一个匹配的签名(我所有字段的列表)

如果有人可以指出一点,这似乎是一个非常方便的捷径。我将不胜感激。

谢谢:)

0 个答案:

没有答案