English 中文(简体)
会后会议
原标题:Assembly unavailable after Web.config change

I m 采用一种习俗框架,在从数据库获得的完全合格的类型名称上使用“(全称<>>>>/代码”,以形成一种上述类型,并添加到网页上,从而形成一种标准的模块式。

<代码>GetTypeByName>是地雷的实用功能,它只是通过<代码>Thread.GetDomain(......)通过<<>tAssemblies(,然后实施assembly.GetType(fullName),以找到相关类型。 很明显,这一结果已经过时,可以用于未来的参考和速度。

然而,我遇到一些问题,如果能够上网的话。 召集会得到更新(如果申请库得到回收),会失去某些集会的所有知识,导致无法对模块类型进行检查。 偷窃表明,失踪的组装实际上在目前的校对名单上不存在。

为了绕过我,我增加了第二次检查,这是一次比照的 d,但通过DLLLs/bin/Directory的笔试,并检查了议会名单上的每个人。 如果是,它用大会装上它。 http://ayende.com/Blog/archive/2006/05/22/Solving The AssemblyLoadContextProblem.aspx”rel=“noreferer” 解决大会的问题。

这样做只会奏效,似乎有些项目(我知道这样做是可能的)仍然能够接触失踪的集会,例如我的实际网络项目,而不是框架本身,然后它抱怨说,重复提及已经增加!

是否有任何人听说过类似情况,或者有什么想法,为什么议会会仅仅在一场大火上放弃存在? 缺乏解决办法,使两岸所有议会重新上载的工作最为棘手? 网站的参观者除了小的拖延外,还看不到任何区别,因此,一个备注-offline.htm的档案没有问题。 从方案上重新命名双版的DVDL,然后将其重新命名,的确是行之有效的,但需要为综管系统的用户账户提供“修改”许可,因为这个账户已经停机。

感谢社区能够聚集一堂!

最佳回答

总的来说,你应避免依赖目前装在遗体内的议会,因为这种情况是动态的。 相反,简单地称为系统.Web.Compilation.BuildManager.GetType()而不是GetType()或大会.GetType()。 这只是你们的正确之举,不应受到 app余的影响。

问题回答

如你所知,,其中有许多情况,即目前的参考资料库未上载并重载。 每一次重载后,所有组件都卸下,整个应用开始“从零开始”。

集会按要求被拖欠。 通常情况是,当联合投资公司在某些方面 st倒时。 因此,一辆超载重机将清除在 app顶的集会,而且只是在紧接着联合军装时才会出现。

作为解决办法一,再使用静态Type.GetType() 方法,并提供一个装配合格名称(例如,包含装配名称的类型名称)。 框架在装货箱档案中指明的类型时也使用了同样的东西,它将确保在不使用任何trick计的情况下搜寻和装载所需组件。 见上文方法的语句部分(上述方法名称是一个链接)。

这将需要更新贵国数据库,以持有合格的名称,而不是“只”完全合格的类型名称。 然而,它也确保,如果两个议会以相同的名称提供不同的类型,你不会陷入姓名碰撞,因此,这是我所认为的任何途径。

我从未听到过这个问题。

我不敢肯定,正如我最近刚刚阅读的,在研究官方发展援助的依赖性的工作时,这样做会奏效,但指出议会的寻找途径可以解决你的问题。

样本:

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="bin;bin2subbin;bin3"/>
      </assemblyBinding>
   </runtime>
</configuration>

I would try to create some basic class from which assembly, which is interesting for you without reflection on Application Start to make sure it is loaded. E.g.

var temp = new BaseModuleBuilder();

这并不看上去聪明,但是,这是很trait的,net应该为你们做一切。 如果贵国名单过于活跃,那么它可能就象这样的情况。

var temp = Activator.CreateInstance(Type.GetType("BaseModuleBuilder, Modules.dll"));

保证在从事装饰性装饰课程时始终具体指明DL。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Transaction handling with TransactionScope

I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

Microsoft.Contracts namespace

For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!

热门标签