首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

silverlight加载程序集dll有关问题

2012-04-13 
silverlight加载程序集dll问题我在silverlight项目中,添加了一个sl类库名称叫SL.Core,然后引用pag.xaml的

silverlight加载程序集dll问题
我在silverlight项目中,添加了一个sl类库名称叫SL.Core,然后引用pag.xaml的类库中并把SL.Core的属性“复制到本”改成False。因为我想把sl.core与xap文件分离开发。用到sl.core的时候才加载进来。。参照网上达人的资料调试成功,代友如下:
  private void loadassem()
  {
  WebClient client = new WebClient();
  client.OpenReadCompleted += com;
  client.OpenReadAsync(new Uri("SL.Core.dll", UriKind.Relative));
  }
  void com(object send, OpenReadCompletedEventArgs e)
  {
  AssemblyPart ap = new AssemblyPart();
  ap.Load(e.Result);

  }
调试成功是我直接按F5来进行运行才成功,我布署到IIS后通过IIS去访问就加载不了?超郁闷啊。
我的IIS设了主机头:http://my.sl.com:10 基它显示SL控件倒是正常,但一调用加载DLL的时候就出错。。
出错内容:
  位于 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
  位于 System.Net.OpenReadCompletedEventArgs.get_Result()
  位于 LC.BSY.Business.BsyContronls.Compt.com(Object send, OpenReadCompletedEventArgs e)
  位于 System.Net.WebClient.OnOpenReadCompleted(OpenReadCompletedEventArgs e)
  位于 System.Net.WebClient.OpenReadOperationCompleted(Object arg)
最后我又改成通过IP去访问SL站点还是一样的错。。。help!!!

[解决办法]
同情楼主啊,我也遇到过这样的问题,非常诡异的是几乎一摸一样的代码,一个可以,一个不行,我现在的做法是Application.GetResourceStream()来读取DLL,但是前提条件是2个DLL在一个XAP里面,或者你可以用绝对路径试试,我没试过绝对路径,如果还不行,似乎就是silverlight本身的问题,因为SL本身很多不安全操作都不可用,例如文件IO等,希望能帮到你的忙
[解决办法]
可能是权限问题,需要给DLL设置asp.net用户权限
[解决办法]
路径问题吧,把SL.Core.dll这个文件拷一份到webApplication的webclient目录下试试。

热点排行