2010-12-01 57 views
0

我在一个ASP.Net项目中有一个HTTP处理程序,并希望生成一个基于Silverlight用户控件呈现为位图的图像。在HTTP处理程序中实例化Silverlight控件,...可能吗?

然而,在ProcessRequest,当我尝试实例化任何的XAML控制,我得到下面的异常....

{“为 ‘MS.Internal.JoltHelper’的类型初始值抛出 例外。“}

...用下面的堆栈跟踪...

在 MS.In ternal.JoltHelper.get_ThreadID() 在 MS.Internal.XcpImports.CheckThread()
在 System.Windows.DependencyObject..ctor(UInt32的 nativeTypeIndex,IntPtr的constructDO)
在 System.Windows.Controls.UserControl ..ctor() 在CaseCard..ctor()在 C:!WORKING_FOLDER \中继线\ ProActive的\ ProActive.UI \ CaseCard.xaml.vb:线 6在ServiceLocator.GetCard()在 C:!WORKING_FOLDER \ Trunk \ ProActive \ ProActive.UI \ ServiceLocator.vb: 20位于 ProActive.Host.ImageGeneratorHandler.ProcessRequest(HttpContext 上下文)位于 C:!WORKING_FOLDER \中继线\ ProActive的\ ProActive.Host \ App_Code文件\ ImageGeneratorHandler.cs: 10在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 线在 的System.Web .HttpApplication.ExecuteStep(IExecutionStep 步骤,布尔& completedSynchronously)

...和内例外是本...

{“无法加载文件或组件 “的System.Xml ,版本= 2.0.5。 0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e'或 其依赖项之一。该系统 找不到文件 规定 “:” 的System.Xml, 版本= 2.0.5.0,文化=中立, 公钥= 7cec85d7bea7798e“}

现在,我..继承了这个项目的一对夫妇几个月前,它的状况很糟糕,我正在努力让它回到正轨,但有些地方存在一些真正的问题,因此完全有可能出现环境问题。如果这是可能的,因为Silverlight运行在一个完全不同的框架中。我真的必须回到GDI +才能完成它吗?

任何和所有的帮助,非常感谢。

+0

你真的试图实例上的Web服务器Silverlight应用程序? Silverlight是一个浏览器插件。 – 2010-12-01 10:17:59

回答

1

原因这是行不通的,因为你的ASP代码运行在完整的.NET框架的上下文中,并试图实例化Silverligt控件 - 就像异常说的那样 - 程序集System.Xml与2.0.5.0版本无法加载/找到。

注版本:2.0.5.0。所有的Silverlight核心DLL都有这个版本,而不是像2.0.0.0那样的“普通”.NET版本。

这并非偶然 - Silverlight的运行小CLR是正规CLR的子集的上下文中。它是不一样的CLR,但大部分是完全一致的,虽然你的C#源代码是完全一样的,运行时间相同。

此刻,你不能用完整的基于.NET代码像ASP.NET混合的Silverlight代码。

有微软内部正在做关于提取定期.NET和Silverlight(一对夫妇竟库)更好地分享共同的核心了一些工作,但是这还没有公开可用的。

另请注意,如果您的某个Silverlight 4.0库的代码不使用Silverlight特定代码,则可以将其加载到常规.NET进程中,但反过来显然是不可能的(Silverlight是子集,而不是相反方向)。

这一切不谈,你可能会实现你的目标:

  1. 在服务器上运行的Silverlight应用程序OOB,并通过一些IPC机制
  2. 重新编译代码到WPF和ASP.NET页面通信加载;当我说的重新编译,我真的是适应/重构由于Silverlight UI不是WPF

既不的纯子集的特殊性容易,但我会向它的清洁第二个选项倾斜。

相关问题