DapperExtensions DefaultMapper无法正常工作

时间:2012-12-14 15:13:31

标签: asp.net-mvc-4 dapper

我有以下代码

class Program 
{
static void Main(string[] args)
{

    static void Main(string[] args)
    {
       DapperExtensions.DapperExtensions.DefaultMapper = typeof(CodeCustomMapper);

    string sql = "select UserID,Name as SName , Email ,Email as wmail from dbo.[User]";

       using (SqlConnection connection = new SqlConnection(conn))
        {
                         var result = connection.Query<User>(sql
                , commandType: CommandType.Text);

                        }

               }
      }




public class CodeCustomMapper: ClassMapper<User>
{

    public CodeCustomMapper()
    {

        base.Table("User");
        Map(f => f.UserID).Key(KeyType.Identity);
        Map(f => f.Name).Column("SName");
        Map(f => f.Name).Column("TName");
        Map(f => f.EmailID).Column("wmail");
        Map(f => f.EmailID).Column("Email");
    }
}

对于manulaly映射列,输出为NULL。 即使我已经分配了默认映射器。是写的做法吗?

使用实体属性手动映射数据库列的任何其他方式吗?

请任何人帮忙

1 个答案:

答案 0 :(得分:2)

看起来你只是使用了错误的扩展方法。

  

Dapper Extensions是一个小型库,通过添加来补充Dapper   POCO的基本CRUD操作(获取,插入,更新,删除)。

尝试使用connection.Get<User>