自己的一个解决方案,能解决,就是太麻烦了。如果有多个操作结果类关联多少个枚举,就要复制代码等等。public enum ResultCode
{
Success,
Failed
}public abstract class OperationResult<TStatus>
where TStatus : struct
{
public abstract TStatus Status { get; set; } public abstract int? StatusCode { get; set; }
}public class OperationResult : OperationResult<ResultCode>
{
public override ResultCode Status
{
get { return (ResultCode)StatusCode.Value; }
set
{
StatusCode = (int)value;
Status = value;
}
} public override int? StatusCode
{
get { return (int)Status; }
set
{
Status = (ResultCode)value.Value;
StatusCode = value;
}
}
}
{
Success,
Failed
}public abstract class OperationResult<TStatus>
where TStatus : struct
{
public abstract TStatus Status { get; set; } public abstract int? StatusCode { get; set; }
}public class OperationResult : OperationResult<ResultCode>
{
public override ResultCode Status
{
get { return (ResultCode)StatusCode.Value; }
set
{
StatusCode = (int)value;
Status = value;
}
} public override int? StatusCode
{
get { return (int)Status; }
set
{
Status = (ResultCode)value.Value;
StatusCode = value;
}
}
}
解决方案 »
- |ZYCWPF| 如要在DataTrigger中去修改ViewModel的MyMessage属性 有示例代码 谢谢
- 路由器更新固件的工作原理,所用协议?
- 水晶报表的问题,刚在网上接触,图表显示有个疑问,请各位帮忙下
- C# 字符串中“的问题
- 在form 上放一個panel控件,如何讓panel有凸出來的3D效果。我把boardstyle設成3D後是凹下去的效果。
- 生成随机数
- SqlDataReader的read()方法执行到空表是时,应采取怎样的措施?
- 在线请教
- 如何判断c#中File.OpenText出来的文件是文本文件还是二进制件?简单地说,就是怎么判断文件的类型
- remoting中事件的问题,急
- C#中的类型转化问题
- (百分求助)MSchart问题,各ChartArea横向排列,共享同一个X轴
public enum ResultCode
{
Success,
Failed
}public abstract class OperationResult<TStatus>
where TStatus : struct
{
public abstract TStatus Status { get; set; } public abstract int? StatusCode { get; set; }
}public class OperationResult : OperationResult<ResultCode>
{
private ResultCode m_Status;
private int? m_StatusCode; public override ResultCode Status
{
get { return (ResultCode)m_StatusCode.Value; }
set
{
m_StatusCode = (int)value;
}
} public override int? StatusCode
{
get { return (int)m_Status; }
set
{
m_Status = (ResultCode)value.Value;
}
}
}
public class OperationResult<TStatus> where TStatus : struct
{
static OperationResult()
{
Type t = typeof(TStatus);
if (!t.IsEnum || Enum.GetUnderlyingType(t) != typeof(int)) throw new NotSupportedException("TStatus must be an enum");
} public int val = 2;
public TStatus Status
{
get { return (TStatus)Enum.ToObject(typeof(TStatus), val); }
set { val = Convert.ToInt32(value); }
//get { return (TStatus)(object)val; }
//set { val = (int)(object)value; }
}
}