当我从Visual Studio启动我的Web API应用程序时,一切似乎都运行良好。但是,当我尝试发布它并通过IIS7运行它时,它不起作用。
第一步,我创建一个名称为Person的控制器。
public class PersonController : ApiController
{
// GET: api/Person
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// GET: api/Person/5
public string Get(int id)
{
return "value";
}
// POST: api/Person
public void Post([FromBody]string value)
{
}
// PUT: api/Person/5
public void Put(int id, [FromBody]string value)
{
}
// DELETE: api/Person/5
public void Delete(int id)
{
}
然后我选择“发布”,然后选择IIS,FTP等。然后,我选择“文件系统”并建立我的路径:
这是我在文件夹中的文件
然后在IIS中,我选择添加新网站:
现在,当我打开并尝试访问控制器时,出现以下错误: http://localhost:8080/FirstSite/api/person
我在做错什么吗?我导出的文件有问题吗?
答案 0 :(得分:1)
如果您添加了一个网站并将主机名留空,则应访问http://localhost:8080/api/person
答案 1 :(得分:1)
尝试将以下内容添加到您托管的web.config
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
</system.webServer>
答案 2 :(得分:0)