サーチ…


備考

型ハンドラを使用すると、データベース型を.Netカスタム型に変換できます。

varcharからIHtmlStringへの変換

public class IHtmlStringTypeHandler : SqlMapper.TypeHandler<IHtmlString>
{
    public override void SetValue(
        IDbDataParameter parameter, 
        IHtmlString value)
    {
        parameter.DbType = DbType.String;
        parameter.Value = value?.ToHtmlString();
    }

    public override IHtmlString Parse(object value)
    {
        return MvcHtmlString.Create(value?.ToString());
    }
}

TypeHandlerのインストール

上記タイプハンドラはにインストールすることができるSqlMapper用いAddTypeHandler方法。

SqlMapper.AddTypeHandler<IHtmlString>(new IHtmlStringTypeHandler());

型推論では、汎用型パラメータを省略できます。

SqlMapper.AddTypeHandler(new IHtmlStringTypeHandler());

明示的なType引数をとる2引数のオーバーロードもあります。

SqlMapper.AddTypeHandler(typeof(IHtmlString), new IHtmlStringTypeHandler());


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow