我是Angular
的新用户,并尝试将日期从角度组件传递到MVC API(C#)
日期时间。看起来我没有在API
方法中获得默认时间戳上午12:00。让我知道我做错了什么。
客户端型号:
export class TestClass {
constructor(
public ctyName: string = '',
public stateName: string = '',
public zipCode: string = '',
public country: string = '',
public effectiveDate: Date = null
) {
}
}
服务模式
public class TestClass
{
public string CityName { get; set; }
public string StateName { get; set; }
public string ZipCode { get; set; }
public string Country { get; set; }
public DateTime EffectiveDate: { get; set; }
}
客户端方法 - 分配
var month = '1';
var day = '1';
var year = '2016';
effectiveDate = new Date(year, month - 1, day);
Api方法
[HttpPost("[action]/{id}")]
public PostResult UpdateData(string id, [FromBody]TestClass testClass)
{
}
我在API
2016-01-01 05:00:00.000
感谢您的时间
答案 0 :(得分:0)
请尝试更改此行:
effectiveDate = new Date(year, month - 1, day);
到此:
effectiveDate = new Date(year, month - 1, day, 0, 0, 0, 0);
这应该对你有帮助。
案例是JS Date构造函数的签名是:
new Date(year, month, day, hours, minutes, seconds, milliseconds);
在您的情况下,您只需指定年,月和日。但是,当前时间会自动填充小时,分钟和秒钟。
选中此项以获取更多参考:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date