system.reflection

    0熱度

    2回答

    我有一個PropertyInfo的列表,現在我需要用這些propertyinfos填充一個新對象,並且存在值或通用類型運行時包含這些屬性,所以我可以創建一個新的實例該對象基於我的運行時創建類型。 我無法基於較早的類型創建對象的新實例,因爲我剛剛過濾了基於集合的屬性(這是由於對象的序列化;長篇故事)。 我該如何做到這一點?

    4熱度

    1回答

    我有以下的C#類: public class Foo { protected virtual void Bar(){ } } public class Baz : Foo { protected override void Bar(){ } } 如果我反思他們的方法吧總是存在: [<EntryPoint>] let main args =

    4熱度

    2回答

    我使用反射在PCL項目(4.5,配置文件78)。反射API 4.5已經改變(見Evolving the reflection API)和事件雖然這種變化是在經典的框架(其中從TypeTypeInfo繼承),這對其他個人資料,包括PCL別的東西幾乎沒有明顯的。 在.NET 4中,這會檢索所有公共成員: typeof(MyType).GetMembers(); 大致相當於在.NET 4.5是 ty

    0熱度

    1回答

    我對我而言是一個複雜的問題。我需要更新一些模型,但我喜歡使用泛型類不要單獨重寫某些代碼。 我需要更新具有其屬性列表的數據,可能排除或包含這些列表中的項目,但這些列表可以是任何其他類/類型。我的問題在代碼上評論。 這些模型是不現實的,有點荒謬,但與我的真實模型有相似之處,請注意,在更新過程中,這些關係的邏輯是相反的。 謝謝大家。 public class RedNotebook { [K

    0熱度

    3回答

    我有幾個成員 public interface IEquipmentHolder { ITypedServiceProvider<IGrabberChannel> VideoChannels { get; } ITypedServiceProvider<IMicrophone> Microphones { get; } ITypedServiceProvider<I

    4熱度

    2回答

    有誰知道有任何方法通過名稱動態獲取參數的值嗎?我試圖創建一個動態傳遞參數的函數。我使用反射來獲取參數的名稱,但似乎無法弄清楚如何獲取傳遞給該函數的值。 例子: Imports System.Reflection Console.WriteLine(Test("Xyzzy")) ' Should print: Xyzzy Function Test(ByVal x as String)

    0熱度

    2回答

    我對這種反射概念很陌生,在從字符串中檢索屬性值時發現問題。例如。 我有一個Employee類具有以下屬性: public string Name {get;set;} public int Age {get;set;} public string EmployeeID {get;set;} string s = "Name=ABCD;Age=25;EmployeeID=A12"; 我想

    1熱度

    1回答

    我有需要的ApiController類型參數爲這樣的方法: private List<MethodInfo> GetMethods<T>() { ... } 我想創建一個類型使用通過這種方法如下: Type controller = Assembly.GetCallingAssembly().GetTypes().Where( type => type.Name.Con

    6熱度

    3回答

    在.Net typeof(DateTime?).Name中使用反射返回「Nullable`1」。 有什麼方法可以將實際類型返回爲字符串。 (在這種情況下「DateTime」或「System.DateTime」) 我知道DateTime?是Nullable<DateTime>。除此之外,我只是在尋找可空類型的類型。

    1熱度

    2回答

    這是我的問題。我想在運行時將庫加載到我的應用程序中。這將允許應用程序消耗接口的新實現而不需要重新編譯。應用程序將搜索它自己的目錄中的庫。我有這樣的代碼: var path = Assembly.GetExecutingAssembly().Location; path = Path.GetDirectoryName(path); path = Path.Combine(path, "<my a