Ø總是來自一個entiryRef/TEntity(從LINQ 2 SQL)我目前正在使用反射來做到這一點,有沒有更好的方法?
我確定與C#或vb.net解決方案(我會轉換成vb.net如果你不能)
Public Function desc(Of t)(ByRef o As t, Optional ByVal PropPrefix As String = "desc") As String
If o Is Nothing Then
Return ""
Else
Dim bind = Reflection.BindingFlags.Public Or Reflection.BindingFlags.IgnoreCase Or Reflection.BindingFlags.Instance
Dim _desc = PropPrefix & If(var.Sess.lang = Sess.elang.en, PropPrefix & "en", "fr")
Dim pinfo As Reflection.PropertyInfo = o.GetType.GetProperty(_desc, bind)
Return pinfo.GetValue(o, Nothing).ToString
End If
End Function
一點背景
我有這樣
tableUser
-----------------
id
name
countryid
tableCountry
--------
countryid
descEn
descFr
數據庫時,我展示關於用戶的信息,我想輕鬆展現在應用程序中選擇好語言
一個例子,我有很多更多的表,更多的查找表
與LINQ 2 SQL如果字段中數據庫爲空,對象將是「無」(null
)和我趕上與第一如果然後我得到了相應的語言領域
你到底在做什麼? – 2009-09-23 17:33:03
看起來他根據配置的語言調用帶「en」或「fr」前綴的方法。 – 2009-09-23 17:36:25
它會返回法語(descfr字段)和英語(descen字段) – Fredou 2009-09-23 17:36:26