Reputation: 3688
[Route("Street/{ZoneID}/{StreetID}/")]
public HttpResponseMessage GetStreet(int ZoneID,int StreetID,[FromUri] RealEstateFilter Filter)
StreetID Is Always 0 when Following Request Is Being Sent From Client
http://localhost:1887/Street/34/23295?MunZone=7&StartDate=&EndDate=
but it works without any optional parameter
how should i configure webapi to be able to read [Fromuri]
Upvotes: 1
Views: 7370
Reputation: 18639
Calling Street/34/23295?MunZone=7&StartDate=&EndDate=
with my Controller Defined as:
public class SomeController : ApiController
{
[Route("Street/{ZoneID}/{StreetID}/")]
public HttpResponseMessage GetStreet(int ZoneID, int StreetID, [FromUri] RealEstateFilter Filter)
{
return null;
}
Gave:
When I defined RealEstateFilter as:
public class RealEstateFilter
{
public int? MunZone { get; set; }
public DateTime? StartDate { get; set; }
public DateTime? EndDate { get; set; }
}
My web.api version is:
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net451" />
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net451" developmentDependency="true" />
I created my Web.Api project from scratch, and this is the only thing in it. Is it possible you have some other route that is interfering?
Upvotes: 7