Vic*_*ues 4 c# code-contracts microsoft-contracts c#-4.0
我在下面编写此合同时显示错误.
错误20方法'.... get_Page'中的格式错误的合同部分
'if'块有问题吗?
public int? Page
{
get
{
int? result = Contract.Result<int?>();
if (result != null)
Contract.Ensures(result >= 0);
return default(int?);
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:
Lasse V. Karisen发表评论时发表了评论:
怎么样:Contract.Ensures(result == null || result> = 0); ?
是卡里森,我之前尝试过这个并编译.但问题仍然存在:在使用合同时是不是可能有ifs?
我遇到的另一个问题是无能为力(主要考虑上面的例子),还涉及结果的使用:
public int IndexOf(T item)
{
Contract.Assert(item != null);
Contract.Assert((item as IEntity).ID > 0);
int result = Contract.Result<int>();
Contract.Ensures(result >= -1);
return default(int);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3175 次 |
最近记录: |