1

我有一个用于 asp.net 的自定义服务器控件。它可用的属性之一是通用对象。该通用对象具有可读取并用于自定义控件呈现的自定义属性。

在运行时,这没有问题,因为我需要做的就是找到传递给控件的实例上的所有属性。

但是,正如控件的“DataSource”成员可以在设计时调用对象类型列表一样,我希望能够在宿主程序集中调出类型列表。不需要实际实例,因为我是基于属性进行渲染的。

这是来自主机控件的示例属性:

[Browsable(true)]
[TypeConverter(typeof(TheObjectConverter))]
public object TheObject
{
    get { return _theObject; }
    set { SetTheObject(value); }
}

我想要发生的是让 TheObjectConverter 能够为控件加载主机页面的程序集。

以下似乎都不起作用

.GetReferencedAssemblies();
.GetExecutingAssembly();
.GetCallingAssembly();
.GetEntryAssembly();
.GetAssembly();

我什至对 .GetReferencedAssemblies() 进行了完全递归,但没有运气。看来我无法在设计时加载控件主机的程序集。这是正确的,还是有办法做到这一点?

4

0 回答 0