我正在向具有一些 ASP.Net 控件的项目添加一个新控件。每个控件本质上都包含一个 .Net 类(继承 ScriptControl)和一个 javascript 文件。每个 js 文件都作为 WebResource 添加到程序集中
[assembly: WebResource("Assembly.Namespace.WidgetControl.js", "text/javascript")]
[assembly: WebResource("Assembly.Namespace.CogControl.js", "text/javascript")]
我想从其他控件之一的另一个 javascript 资源中的“类”继承,否则我需要从我想要继承的 js 类中复制/粘贴代码一些函数代码,丑陋,丑陋,难看维护。我不喜欢重复的努力。
现在,我所追求的是 WebResource 加载顺序。假设,出于演示目的,我想从类继承WidgetControl.js
并扩展它ThingaMahBobControl.js
. 在 Widget 保证加载顺序之后添加 ThingaMahBob 的 WebResource 程序集引用吗?
我不能从尚未加载的东西继承,所以这很重要。由于控件继承了抽象的 ScriptControl,它必须实现GetScriptReferences()
,所以以所需的顺序返回可枚举的引用集合会起作用吗?IE:
protected override IEnumerable<ScriptReference> GetScriptReferences()
{
List<ScriptReference> refs = new List<ScriptReference>();
refs.Add(new ScriptReference("Assembly.Namespace.WidgetControl.js", this.GetType().Assembly.FullName));
refs.Add(new ScriptReference("Assembly.Namespace.ThingaMahBobControl.js", this.GetType().Assembly.FullName));
return refs;
}