[英]Pass angular querystring to API controller as C# class by http.get
[英]Passing parameters from angular http.get to c# controller
我想將參數傳遞給get函數。
我正在編寫一個Rent項目,用戶必須從日期,到日期等方面選擇汽車制造商,並且通過這些參數,我需要搜索數據庫。 HPPT.GET方法返回錯誤
//My Class
export class SelectParams {
Gear: number;
MakeYear: number;
Maker: number;
Degem: number;
StartDate: string;
EndDate: string;
FreeText: string;
}
//My Http.get
Sparams: SearchParams = new SearchParams();
let httpParams = new HttpParams().set('Id',this.Sparams.toString());
let options = { params: httpParams };
this.h.get(this.CarUrl,options).subscribe(
code => {
this.CarDbData = code;
this.CarVec = this.CarDbData as Car[];
console.log("this is select component");
console.log(this.CarVec);
});
//This is my c#
public class SelectParams
{
public int Gear;
public int MakeYear;
public int Maker;
public int Degem;
public System.DateTime StartDate { get; set; }
public System.DateTime EndDate { get; set; }
public string FreeText;
}
public IEnumerable<Car> Get(SelectParams SParams)
{
Car CarV = new Car();
return CarV.SelectByParams(SParams);
}
我收到HTTP 400錯誤請求。 我究竟做錯了什么?
謝謝
我已經做了一些解決方案,但是我真的不知道有什么幫助。 我在類中添加了[DataContract]和[DataMember]-在此階段沒有幫助。 我創建了一個新的控制器並嘗試將其激活。 現在我進入了控制器發布功能。 返回了參數,但沒有輸入參數。由於我不是很重要,因此我更改為HTTP.PUT。 我仍然對此有疑問。 我看到有關多個實例的錯誤消息,而IIS不知道要激活哪個實例,因此我刪除了控制器隨附的默認put函數,現在一切正常。 我現在要做的就是增強數據庫中的select語句。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.