0

我想提高我的知识,因为我多次注意到,我确信我在没有使用正确做法的情况下进行开发,例如在 ASP.NET MVC 中导出 csv,我在控制器中创建了 4 个私有方法,这些方法可以必要并返回数据。我将 1 种方法、4 种方法结合起来,并在使用单击导出 CSV 时调用父方法。这 4 种方法用在两个不同的地方。所以我可以将每个代码分解为一个,或者可以使用委托。当然。

所以我按照 http://msdn.microsoft.com/en-us/library/aa645739(v=vs.71).aspx 中关于事件的 教程http://msdn.microsoft.com/en-us/ library/aa288459(v=vs.71).aspx关于委托

现在,我认为,不可能在 Web 上下文中创建管理器事件的侦听器。我的假设是 Web 未连接环境,因此您每次都会丢失上下文。您知道使用 webContext 管理事件+侦听器的技术方法吗?

如果您有任何有关要实现的模式的文档/链接,那么阅读它将是一种乐趣。

4

1 回答 1

0

您可以通过使用会话 ID 来引用同一会话,使您的 API(控制器操作/WEB API)“<strong>上下文/会话感知”。这样,您的服务器端逻辑将能够为您“记住”事物,从而模拟上下文的概念。

当您从可伸缩性的角度来看这种方法时,您的请求将由服务器集群中的许多服务器之一提供服务(除非您实现专用的会话共享机制),这种方法就不受欢迎了。

最好的办法是实现一个业务服务层,它将封装你所有的原子和重复逻辑,并让控制器动作/web apis 来调用服务方法

希望这可以帮助

于 2013-06-04T00:25:28.737 回答