我有一个文本框(不是强类型),人们可以将它们设置为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部分以上任何建议都会很棒,因为我每天都在学习更多 !
答案 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.
}
}