我需要获取给定命名空间中的所有可用类。
以下是我所做的
在我的Index方法( XyzController.cs )中,我添加了这一行。
var classesList = Assembly.GetExecutingAssembly().GetTypes().Where(t => t.Namespace == "PATH.TO.HAMESPACE").ToList()不幸的是,这没有给我任何记录/课程。
但是,当我在同一个名称空间(即PATH.TO.HAMESPACE )中创建一个新类时。用同样的密码。然后从控制器调用这个类,代码返回正确的类列表。
如何从控制器运行此代码以获得PATH.TO.HAMESPACE中的所有可用类
发布于 2016-08-19 21:05:16
过高的方法,但这可能有效:
AppDomain.CurrentDomain.GetAssemblies()
    .SelectMany(a => a.GetTypes())
    .Where(t => t.Namespace == "Namespace");或者(和),您应该尝试显式加载程序集。用Assembly.Load或Assembly.LoadFrom。
Assembly.Load("your assembly fullname")
    .GetTypes()
    .Where(t => t.Namespace == "Namespace");https://stackoverflow.com/questions/39047442
复制相似问题