私は構成プロバイダーを行っており、私のサービス層にはこれがあります:
public string GetValue(string key)
{
return _ctx.Configurations.SingleOrDefault(q => q.Key == key).Value;
}
しかし、元の型の値を取得するにはどうすればよいですか。次のようにしたいと思います。
public T GetValue<T>(string key)
{
return (T)(object)_ctx.Configurations.Single(q => q.Key == key).Value;
}
ここで指摘されているように: https://stackoverflow.com/a/9420236/544283、それはジェネリックの乱用になります...私はそれで暮らすことができます。
タイプがわかっているので、メソッドの外側で値をキャストし、メソッドの内側で文字列として扱うことができますが、それは避けたいと思います。