4
我剛剛開始使用Dapper進行項目工作。我已經完成並運行了一些簡單的查詢,但是當涉及到連接表和使用屬性時,我有點困惑。理解短小精靈splitOn屬性
說我有以下查詢:
Query<Firm, Firm_FirmType, FirmTypeShareholder, City, Country, Firm>(@"SELECT DISTINCT Firm.*, sh.CustomerID FROM Firm
JOIN Firm_FirmType AS ft ON ft.FirmID = Firm.ID
JOIN FirmTypeShareholder AS sh ON sh.Firm_FirmTypeID = ft.ID
JOIN City ON City.ID = Firm.ZipCode
JOIN Country ON Country.ID = Firm.ISO
JOIN Person_Firm_PersonResponsibility as res ON res.FirmID = Firm.ID
WHERE res.PersonID = " + personId,
(firm, firmType, shareholder, city, country) =>
{
firm.City = city;
firm.Country = country;
firmType.FirmTypeShareholder = shareholder;
firm.Firm_FirmType.Add(firmType);
return firm;
}, splitOn: "ID, ID, Firm_FirmTypeID, ID, ID");
看到,因爲我只希望真正從Firm
表中選擇所有列只有從FirmTypeShareholder
表CustomerID
,究竟應該我splitOn
是呢?現在,我已經定義了ID,以拆分爲每個表在我Query<...>
其中給出了這樣的:
當使用多地圖API確保您設置的splitOn PARAM如果你有多個id其他鍵
異常。
任何人都可以說明這是如何工作(以及我做錯了什麼)? :-) 提前致謝!
'WHERE res.PersonID =「+ personId':請爲愛.. 。使用查詢參數! – RobIII
是的,當然.. :-) –