c# - 我如何将 if else 转换为一行 if else?

标签 c# asp.net-mvc

如果不是,我如何将后续代码转换为一行

if (data.BaseCompareId == 2)
    report.Load(Server.MapPath("~/Content/StimulReports/MonthGroup.mrt"));
else
    report.Load(Server.MapPath("~/Content/StimulReports/YearGroup.mrt")); 

我试过这段代码但是没有用

data.BaseCompareId == 2
    ? report.Load(Server.MapPath("~/Content/StimulReports/MonthGroup.mrt"))
    : report.Load(Server.MapPath("~/Content/StimulReports/YearGroup.mrt"));

最佳答案

试试这个:

string path = data.BaseCompareId == 2
    ? "~/Content/StimulReports/MonthGroup.mrt"
    : "~/Content/StimulReports/YearGroup.mrt";
report.Load(Server.MapPath(path));

由于 report.Load() 返回一个空值,它不会工作。

编辑版本:

string s = data.BaseCompareId == 2 
      ? "MonthGroup.mrt" 
      : "YearGroup.mrt";
report.Load(Server.MapPath("~/Content/StimulReports/" + s));

关于c# - 我如何将 if else 转换为一行 if else?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19765763/

相关文章:

asp.net-mvc - SyntaxError : JSON. 解析:对象中的属性值后预期为 ',' 或 '}'

javascript - 客户端表单提交日期时间,MVC 应用程序

c# - 如何检索多个 let linq to xml c#

c# - wcf 将列表作为方法参数传递

c# - Xamarin iOS 调试需要永远,不加载模拟器

c# - 查看模型 Asp.Net MVC

c# - 当我尝试添加实体时 Entity Framework 中的 InnerException

c# - 运行已编译的 C# 程序 (.exe) 的要求

c# - 如何正确制作 byte[] 字段必填字段?

javascript - 如何使应用程序中的所有按钮(甚至是动态创建的)都遵循 jquery 按钮小部件,而无需多次调用 .button()