我正在尝试创建一个Asp.net WebApi /单页面应用程序.如果没有给出路由,我希望我的服务器分配index.html.我希望它以正常的"{controller}/{id}"方式指定一个控制器.
我意识到我可以使用http:// localhost:555/index.html访问我的索引页面.我如何通过访问http:// localhost:555来做同样的事情?
目前,我正在使用Visual Studio Online中新的Team Foundation Build 2015(以前的Build vNext)功能构建ASP.NET MVC项目,并且我可以轻松地成功部署到Azure网站.
此外,我有一个Windows Server 2012和IIS的私人服务器(您无法通过Internet访问它),我想知道是否有任何方法可以从我的Visual Studio Online构建中进行部署.可能吗?
我想将一堆数据,转换为json,作为字符串,发送到Web API POST方法.我可以发送一个简单的字符串,但是当我尝试发送字符串化的json数据时,甚至没有达到该方法 - 显然复杂的字符串不被视为有效的字符串值或其他东西.
当从客户端传递"randomString"时,这是有效的:
[Route("{unit}/{begindate}/{enddate}/{stringifiedjsondata}")]
[HttpPost]
public void Post(string unit, string begindate, string enddate, string stringifiedjsondata)
{
// test
string jsonizedData = stringifiedjsondata;
Run Code Online (Sandbox Code Playgroud)
string dataAsJson = "randomString";
String uriToCall = String.Format("/api/produceusage/{0}/{1}/{2}/{3}", _unit, beginRange, endRange, dataAsJson);
HttpResponseMessage response = await client.PostAsync(uriToCall, null);
Run Code Online (Sandbox Code Playgroud)
当字符串是json数据时,例如:
[
{
"ItemDescription": "DUCKBILLS, GRAMPS-EIER 70CT 42#",
"PackagesMonth1": 1467, . . . }]
Run Code Online (Sandbox Code Playgroud)
...这是行不通的.我通过使用JSON.NET将通用列表转换为json来创建此字符串,如下所示:
string dataAsJson = JsonConvert.SerializeObject(_rawAndCalcdDataAmalgamatedList, Formatting.Indented);
String uriToCall = String.Format("/api/produceusage/{0}/{1}/{2}/{3}", _unit, beginRange, endRange, dataAsJson);
HttpResponseMessage response = await client.PostAsync(uriToCall, null); …Run Code Online (Sandbox Code Playgroud)