我正在爲SQL編寫一個F#dsl(http://github.com/kolosy/furious)。在F#引用中嵌入變量
select語句應該是這樣的:
type person = {
personId: string
firstname: string
lastname: string
homeAddress: address
workAddress: address
altAddresses: address seq
}
and address = {
addressId: string
street1: string
zip: string
}
let (neighbor: person seq) =
db.Yield <@ Seq.filter (fun p -> p.homeAddress.zip = '60614') @>
明顯(和愚蠢的)問題是...我如何參數化的報價?
如果我只是服用點,如:
let z = "60614"
let (neighbor: person seq) =
db.Yield <@ Seq.filter (fun p -> p.homeAddress.zip = z) @>
然後z
得到解決到靜態屬性訪問器(PropertyGet(None, String z, [])
)。我需要一些能讓我根據報價檢索變量/ let綁定的值。想法?
哇。整潔,謝謝。那將會如何穩定?如在中,是沒有記錄的特徵,還是僅僅是當前迭代的行爲?我沒有得到很多熱情和模糊的挖掘報價的東西。 – kolosy 2010-07-12 22:11:37
我相信這是一個穩定的功能;在頂層聲明的名稱是模塊中的值(靜態類的屬性),而本地名稱只是值。 – Brian 2010-07-12 22:27:41
d'oh。好吧,所以這只是因爲我的測試工具被編寫的問題。說得通。 – kolosy 2010-07-12 23:08:31