在数据库中查找条目并动态加载用户控件

本文关键字:动态 加载 用户 控件 数据库 查找 | 更新日期: 2023-09-27 18:06:42

我密切关注c# -正确加载程序集,查找类和调用Run()方法的方法,并获得了从程序集动态加载类的代码。

             Assembly assembly = Assembly.LoadFile(assemblyName);
             Type type = assembly.GetType(className);
             object objCustomClass = Activator.CreateInstance(type) as object; 

where assemblyName &从数据库

但是我需要从数据库加载usercontrol类。我没有汇编,因为用户控制是在UI本身。这是怎么做到的?

编辑:我正在改变我的问题。现在我将用户控制文件存储在其他位置,可能是在blob存储或其他地方。(不是在我的项目工作空间),我存储在数据库中的用户控件的url。现在如何加载这个用户控件到我的网页?

我可以创建一个dll的所有用户控件和加载完全像上面的代码?

在数据库中查找条目并动态加载用户控件

使用MyControl control = (MyControl)Page.LoadControl("mycontrolname.ascx")

是的,只要在需要时实用地创建一个UI控件对象,并使用this.Controls.Add(cbName);方法来做到这一点。

详情请查看此链接

您可以使用以下两种方法中的任何一种

您总是可以使您的用户控件为自定义控件。他们将有一个程序集,您可以将其存储在您的数据库中。

或者如果你想动态加载usercontrols,你可以将usercontrol的路径(''controls'usercontrol.ascx')存储在DB上,并可以像任何其他控件一样动态加载它