我公司的核心技术组件之一是用于数字签名的Java Applet。这是一个无头组件,因为所有表示都是通过HTML / CSS处理的,而applet方法是从Javascript调用的。 applet本身在页面中不可见。
现在我们遇到了一种特殊的签名格式(嵌入在docx [OfficeOpenXML]文档中的签名),使用.Net类更容易处理的情况,我们将一些原型实现为.Net DLL。
在过去的COM时代,Active / X组件被用于具有类似目的的网页中,并且也可以编写脚本。我想知道现在嵌入.Net类和使用Javascript编写脚本的等价物(如果有的话)。
使用什么技术? Silverlight会成为一种方法,还是偏向于RIA,即具有视觉外观的应用程序?如果这是一个很好的解决方案,我将非常感谢指向该方向的教程或代码示例。我过去大约有1年的时间接触.Net(C#)但没有接触到Silverlight。
答案 0 :(得分:3)
是的,Silverlight是.Net等同于Java applet。您可以用C#,VB,Python,Ruby等编写代码,然后通过DOM和Javascript与它进行交互。
但是,在您的一条评论中,您表明您要使用存储在本地计算机上的客户端证书签署文档。我不知道有任何方法可以使用基于浏览器的Silverlight应用程序。您可以使用浏览器外的Silverlight应用加载COM对象来为您进行出价,但之后您将无法编写脚本。
答案 1 :(得分:1)
Silverlight 不这里使用的技术。它不允许您访问所需的用户系统。
然而,没有什么能阻止您使用.NET代码创建ActiveX / COM组件。然后,您可以围绕完成工作所需的完整.NET类创建COM / Scriptable友好包装。
当然这不再是跨浏览器。如果您需要跨浏览器解决方案,那么您将陷入痛苦的世界,因为您需要从其他浏览器的扩展技术接口到某些.NET代码。这可能涉及到一些COM。