У меня есть метод службы WCF, который принимает параметр int и возвращает набор результатов на основе этого параметра. Я использую linq и сущность framework для извлечения записей. Существует новое требование для запроса одной и той же таблицы с другим полем. Это поле является полем varchar и принимает входной параметр string. Итак, каков наилучший способ реализации этого. Лучше ли распространять один и тот же метод обслуживания для включения нового параметра или сделать отдельный метод обслуживания. Другой момент, который следует отметить, заключается в том, что я не делаю, какой параметр будет передавать клиент в любой момент времени. Ниже приведена существующая логика метода обслуживанияWCF - параметры передачи
public IEnumerable<TBI.JV.Business.Objects.Asset> GetAssetsBasicBySedols(int[] sedols)
{
var priceDate = DateTime.UtcNow.Date.AddMonths(-8);
var typeList = new string[]
{
"UNIT TRUST",
"OEIC",
"INVESTMENT TRUST",
"INVESTMENT COMPANY",
"PENSION FUND",
"INSURANCE BOND",
"LISTED EQUITY",
"PREFERENCE SHARE",
"ZERO DIVIDEND PREF",
"GILT (CONVENTIONAL)",
"GILT (INDEX LINKED)",
"AIM",
"VCT",
"OFFSHORE FUND",
"ETP"
};
using (var dealingContext = new dbDealingContainer())
{
return (from fundprice in dealingContext.FundPrices
where (fundprice.FUND_STATUS == "ACTIVE" || fundprice.FUND_STATUS == "SUSPENDED") &&
(fundprice.INVNAME != null || fundprice.INVNAME != "") &&
!fundprice.INVNAME.StartsWith("IFSL Bestinvest") &&
fundprice.WaterlooTradable == true &&
//fundprice.PRICE_DATE > priceDate &&
fundprice.BID_MID_PRICE > 0 && typeList.Contains(fundprice.FUND_TYPE)
&& ((sedols.Count() > 0 && sedols.Contains(fundprice.Id)) || sedols.Count() == 0)
select new TBI.JV.Business.Objects.Asset
{
AssetName = fundprice.INVNAME,
AssetId = fundprice.Id,
AssetType = fundprice.FUND_TYPE,
Epic = fundprice.INVESTMENT_CODENAME,
StarRating = fundprice.STARLEN,
Sedol = fundprice.SEDOL_NUMBER
}).ToList();
}
}
Является ли новое требование для _query той же таблицы с ** другим полем ** _ (запрос целым числом и строкой) или просто параметром строки? – Herdo