私のビジネスロジックの特定のクラスで静的なプロパティまたはメソッドを定義し、セッションまたはキャッシュのASP.NETサービスでどのクラスがキャッシュ可能であるかを明確にする必要があります。私は、静的なプロパティやインターフェイスのメソッドは完璧だと思っているが、C#4.0はこれをサポートしていません。C#静的なプロパティまたはメソッドを持つインターフェイス?
ジェネリック・マネージャーでは、どのクラスがキャッシュ可能であるかを評価することができます。セッション(ユーザー)またはキャッシュ(アプリケーション)のレベル。
今私は評価するためにTパラメータで空のインターフェイスを試していますが、おそらくもっと良いアプローチが存在しますか?ありがとう。
public interface ICacheable<T>
{
}
public class Country : ICacheable<CacheApplication>
{
}
public class Department : ICacheable<CacheUser>
{
}
public class Gestor<T>
{
// ...
if (typeof(T) is ICacheable<CacheApplication>)
{
}
// ...
}
マーカーインターフェイスについて考えているときはいつも、代わりに属性が必要です。http://msdn.microsoft.com/en-us/library/z0w1kczw.aspx – millimoose