【发布时间】:2011-03-21 00:24:03
【问题描述】:
我正在开发一个 WPF 应用程序,该应用程序使用一个 BusinessLogic 层(当前是一个 dll),我在其中创建了将直接从 UI 调用的 BL 方法。每个 BL 管理器都使用 Unity 解决(尽管考虑切换到 MEF ......)。 BL 类实现了一个特定的接口,当然也有适当的方法。
现在,我想要创建(或者更确切地说是生成)一个新的类似异步方面的程序集(或更多...),它应该具有与我的原始程序集中定义的类似方法/操作(相同的参数。 ..) 以及作为参数的回调委托。 所以基本上我希望用一些框架生成异步方法......
除了通常调用: 用户 userBO = Resolve().Login("name", "pass"); 我想使用类似的东西: Resolve().Login("name", "pass", delegate(object, SomeArgs e) { User userBO = e.Args....};
现在,我希望生成这个程序集,而不是为每个方法编写新的 eventArgs 和委托。 我知道 PostSharp 可以在 AOP 任务中提供帮助,但我在异步方法的新 dll 中找不到任何有关此代码生成机制的信息。
有没有办法使用第三方工具来实现这一点,还是我必须手动重写整个异步?
欢迎任何想法。 谢谢。
【问题讨论】:
-
您始终可以编写自己的工具来创建 BeginXXX EndXXX 方法对并将它们放入部分类中 - 类似于 Web 服务引用代码生成的工作方式。代码的管道基本相同,因此是自动化的完美候选者。我不知道为此目的而想到的第三方工具。
标签: c# .net asynchronous aop business-logic