c# - 不可调用的成员“OperationResult”不能像方法一样使用
问题描述
我有这个课程的返回日期:
public class OperationResult<TResult>
{
public TResult Result { get; private set; }
public bool Success { get; private set; }
public string ErrorMessage { get; private set; } = null;
public Exception Exception { get; private set; } = null;
public static OperationResult<TResult> BuildSuccessResult(TResult result)
{
return new OperationResult<TResult> { Success = true, Result = result };
}
public static OperationResult<TResult> BuildFailure(string errorMessage)
{
return new OperationResult<TResult> { Success = false, ErrorMessage = errorMessage };
}
public static OperationResult<TResult> BuildFailure(Exception ex)
{
return new OperationResult<TResult> { Success = false, Exception = ex };
}
public static OperationResult<TResult> BuildFailure(Exception ex, string errorMessage)
{
return new OperationResult<TResult> { Success = false, Exception = ex, ErrorMessage = errorMessage };
}
}
我用它作为函数的结果:
public async Task<OperationResult<IEnumerable<TResult>>> GetAll<TResult>(string spName)
{
using (var connection = new SqlConnection(configration.ReportingConnection))
{
try
{
connection.Open();
var query = await connection.QueryAsync<TResult>(spName);
if (query != null)
{
var res= OperationResult<IEnumerable<TResult>>().BuildSuccessResult(query);
}
return new OperationResult<IEnumerable<TResult>>().BuildFailure("Error When Getting Date form DateBase");
}
catch (Exception ex)
{
return OperationResult<IEnumerable<TResult>>().BuildFailure(ex,"");
}
finally
{
connection.Close();
}
}
}
但它在这一行向我显示了这个错误:
不可调用的成员“OperationResult”不能像方法一样使用。
在这一行:
var res= OperationResult<IEnumerable<TResult>>().BuildSuccessResult(query);
或显示此错误
无法使用实例引用访问成员“OperationResult>.BuildFailure(string)”;使用类型名称而不是 AdminPanelGetWay.DAL.Dapper 来限定它
在这一行
return new OperationResult<IEnumerable<TResult>>().BuildFailure("Error When Getting Date form DateBase");
现在有什么问题?我怎么解决这个问题 ????
解决方案
那是因为你的方法都是静态的。代替
var res= OperationResult<IEnumerable<TResult>>().BuildSuccessResult(query);
您需要删除“()”
var res= OperationResult<IEnumerable<TResult>>.BuildSuccessResult(query);
推荐阅读
- c# - 读取 customdocumentproperties 的公共值并使其在功能区中被选中
- hibernate - Spring JPA 规范一对多连接 3 个表
- python - 成功构建映像后尝试运行 docker 容器
- html - 为什么根容器中没有 `max-width` 子元素中的 `display: flex` 会使根容器占据 100% 的宽度?
- mysql - Mysql`SET FOREIGN_KEY_CHECKS = ON`在游标循环内打印注释时出错
- winforms - C# 桌面应用程序
- docker - docker-compose up `require':无法加载此类文件 -- pg (LoadError)
- mysql - 检测 Django 中的数据库更改
- c++ - Xcode 自动完成不显示没有 .h 文件结尾的 STL 头文件
- flutter - 创建可拖动的小部件列表