来自MVC控制器方法功能的值未显示在视图中

时间:2019-01-10 17:03:54

标签: c# asp.net-mvc razor

“我的视图”未呈现通过控制器中的方法返回的Tax变量。我控制器中的方法返回Tax。该方法如下所示:

public string GetTax(decimal feednumber, string cityname, string actualproduct)
    {
        var myresult = "";
        var tax = db.Database.SqlQuery<string>("Select tax from OPISPricing where FeedNumber=@fn and CityName=@cn and ActualProduct=@ap", new SqlParameter("@fn", feednumber), new SqlParameter("@cn", cityname), new SqlParameter("@ap", actualproduct));
        foreach (var thing in tax)
        {
           myresult = thing;    
        }

        return myresult;
    }

在我的视图中,我试图显示如下结果:

     @{
     var Tax = ((OPISLocationsController)this.ViewContext.Controller).GetTax(item.FeedNumber, item.CityName, thing);
     Html.DisplayName(Tax);
     }

Var Tax =和Html.DisplayName(Tax)明显冗余的原因是,我可以放置一个断点并验证该值实际上已返回并且确实存在。那么为什么页面呈现后却没有显示出来?

1 个答案:

答案 0 :(得分:0)

我认为您的问题出在“ Html.DisplayName()”上,它必须在“ @ {}”之外,请尝试以下操作:

 @{
 var Tax = ((OPISLocationsController)this.ViewContext.Controller).GetTax(item.FeedNumber, item.CityName, thing);

 }  @Html.DisplayName(Tax);