现有 DI 框架使用和 Silverlight

发布于 2024-11-09 09:59:06 字数 563 浏览 0 评论 0原文

您好,

我们使用接口和 DI 构建了一个广泛的系统和数据框架 api。对于数据访问,如果应用程序是 Windows 服务/WCF 服务,则使用 Castle 在运行时注入存储库的 LINQ 实现。客户端 Web/winform 应用程序使用相同的数据控制器/域对象,但实现部分使用注入的 WCF 客户端类进行数据访问。此设置最酷的部分是,客户端和服务器代码可以通过包含适当的程序集和一些翻译来重用相同的域对象、服务和系统逻辑。

我刚刚使用 VS2010 中的“Silverlight 导航应用程序”模板创建了一个 Silverlight 应用程序。看来我引用桌面 CLR 代码的唯一方法是通过链接类(添加现有项目/链接)。虽然没有大量的管道类,但有一些核心类可以使用城堡微内核和应用程序配置文件处理电子邮件、短信、日志记录和数据访问的路由接口。

我可以通过将控件绑定到 WCF 服务引用来进行网格显示等操作。但是,我想重用控制器模型来进行消息传递、数据访问、日志记录等。我无法确定是否值得花时间尝试将所有现有类放入 SL 项目类,或者开始考虑以某种方式为 SL 创建一个新的轻量级 api?有人有过 unity/castle 和 Silverlight 的经验吗?

Greetings,

We have built an extensive system and data framework api using interfaces and DI. For the data access, if the application is a Windows service/WCF service then a LINQ implementation of the repositories is injected at runtime using Castle. Client web/winform applications use the same Data controllers/domain objects but the implementation portions use injected WCF client classes for data access. The cool part about this setup is that the client and server code can reuse the same domain objects, services and system logic by including the appropriate assembly with a few translations.

I have just now created a Silverlight application using the "Silverlight Navigation Application" template in VS2010. It seems the only way I can reference my desktop CLR code is via linked classes (add existing item/linked). There is not a boat load of plumbing classes, but there are some core classes that handle routing interfaces for emails, SMS messages, logging, and data access using the castle microkernel and application configuration files.

I can do grid displays and whatnot by binding the controls to the WCF service references. However, I would like to reuse the controller model for messaging, data access, logging and so on. I cannot determine if it is worth the time to try to fit all the existing classes into SL project classes or start thinking about somehow creating a new lightweight api for SL? Has anyone had experience with unity/castle and Silverlight?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苍暮颜 2024-11-16 09:59:06

关于“看来我引用桌面 CLR 代码的唯一方法是通过链接类”,您始终可以使用可移植类库,它适用于从 CLR、SL 到 Xbox360 的所有内容。

In regards to "It seems the only way I can reference my desktop CLR code is via linked classes" you could always use a portable class library and it will work on everything from CLR, SL through to Xbox360.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文