并非所有代码路径都返回值。我只是想知道这是什么解决方案?

时间:2016-09-26 12:36:04

标签: c# asp.net-mvc

当我将鼠标悬停在索引上方时,它下面有一条红线并显示

  

' UnauthEnquiryController.index(UnauthenticatedEnquiryViewModel)':并非所有代码路径都返回一个值。

我只是想知道对此有什么解决方法?

xml = body |> IO.chardata_to_string
[[encoding]] = Regex.scan(~r/(?<=encoding=").*?(?=")/, xml)
doc = xml
      |> Codepagex.from_string!(:iso_8859_1)
      |> Codepagex.to_string!(
           encoding
           |> String.downcase
           |> String.replace("-", "_")
           |> String.to_atom
         )
      |> Exml.parse(encoding: 'utf-8') # force utf-8

3 个答案:

答案 0 :(得分:1)

在这里你创建了一个条件,

if(ModelState.Isvalid)
{
      {// LOTS OF CODE}
      return View(....);
}

但是如果

ModelState.Isvalid == false

为真,那么函数不会返回任何内容

答案 1 :(得分:1)

[HttpPost]
public ActionResult Index(UnauthenticatedEnquiryViewModel unauthenticatedEnquiryViewModel)
{
    //unauthenticatedEnquiryViewModel.EnquiryType;
    //NEED TO ADD A METHOD THAT SENDS FILE TO CRM HERE
    if (ModelState.IsValid)
    {
        ...

        return View("Unauthsuccess", unauthenticatedEnquiryViewModel);
    }

    unauthenticatedEnquiryViewModel.Professions = DataAccessEnquiry.GetProfessionUnauthenticated();
    unauthenticatedEnquiryViewModel.EnquiryTypes = new List<EnquiryType>();

    //THIS path doesn't return value.
    //HERE return somethig
}

只有当if (ModelState.IsValid)为真时才返回值,但如果这是假的,你想要返回什么?

答案 2 :(得分:0)

如果条件只是这样说的话,你就会重新获得价值。如果条件也必须返回