mvc3使文本框采用INT和字符串值进行搜索

时间:2014-02-04 20:16:59

标签: asp.net-mvc-3 get tostring

我有一个文本框(不是强类型),人们可以将它们设置为zipcodes(INT)并执行搜索。我现在也希望从同一个文本框中启用城市的搜索功能(字符串)是否可以使用控制器执行此操作,这是我最初使用的zipcode功能

public ActionResult search(int? zipcode)
     {

         // perform zipcode search

    }

这是非常基本的,我现在要做的是这样的事情

   public ActionResult search(int? zipcode)
     {

         // The zipcode will be coming to the controller as a "GET"
         // 1.    How can I check if a field is numerical from this controller
        if(zipcode == numerical)
         {
          // perform zipcode search 
       }
       else
       {
         // 2.    obviously this gives me an error cannot implicitly convert string to int
       zipcode = zipcode.ToString();

       // if I can get past those 2 roadblocks then I would search for cities below


    }

    }

我的问题是如何在1个文本框中搜索城市和邮政编码?我见过多个网站都允许这种功能;我被困在第1部分和第2部分以上任何建议都会很棒,因为我每天都在学习更多 !

1 个答案:

答案 0 :(得分:1)

默认情况下将其视为字符串,并尝试将其解析为整数。如果解析失败,那么它不是一个数字,你可以把它当作一个城市。

public ActionResult Search(string search)
{
    int zipCode;
    if(int.TryParse(search, out zipCode)
    {
       // It's a zip code and you can use the zipCode variable
    }    
    else
    {
      // Not a number, must be a city. You can use the search variable.
    }
}