1
我如何複雜的對象轉換爲查詢字符串用於的WebAPI:轉換複雜對象查詢字符串
export enum FilterCondition {
Equal,
NotEqual,
GreaterThan,
LessThan,
GreaterThanEqual,
LessThanEqual
}
export class QueryParameter {
propertyName: string;
filterCondition: FilterCondition
value: string;
}
export class QueryOptions {
queryParameters: QueryParameter[] = new Array<QueryParameter>();
}
我想編寫一個通用的功能到複雜的類型轉換爲基本查詢 我寫的這個函數轉換一個簡單的對象查詢字符串
export class QueryStringBuilder {
static BuildParametersFromSearch<T>(obj: T): URLSearchParams {
let params: URLSearchParams = new URLSearchParams();
const objectKeys = Object.keys(obj) as Array<keyof T>;
for (let key of objectKeys) {
params.set(key, obj[key])
}
return params;
}
}
但我有麻煩抓我怎麼能與枚舉和數組等複雜的對象做到這一點遞歸?任何人都可以指向正確的方向,或者已經做到了這一點?
的利用方法可能是有用的也 –
@RobMcCabe我會後一個在一秒鐘。必須在我的github上找到它 –
@RobMcCabe我已經更新,包括一個示例用法,一些導入是必需的IHasId是我自定義的,所以你可以忽略那個等 –