Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何以及在何处正确设置Castle Windsor v2.5 for MVP Winforms

如何以及在何处正确设置Castle Windsor v2.5 for MVP Winforms
EN

Stack Overflow用户
提问于 2013-02-13 17:01:14
回答 1查看 535关注 0票数 1

我对Castle Windsor for Winforms场景的正确实现感到困惑,我找到的所有文档都是关于WCF和Windows的,所以我请求帮助在ASP.NET窗体中正确实现Castle Windsor。下面是我的代码..。我从MVP http://dotnetchris.wordpress.com/2009/02/16/creating-a-generic-model-view-presenter-framework/的这个方法开始。

为了传递给Winforms,我做了这样的事情

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public interface IPresenter<TViewModel>
{
    TViewModel View { get; set; }

    event EventHandler ViewInitialized;

    void OnViewInitialized(EventArgs e);

    event EventHandler ViewLoaded;

    void OnViewLoaded(EventArgs e);
}

基本形式是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public partial class MvpForm<TPresenter, TViewModel> : Form
    where TPresenter : IPresenter<TViewModel>
    where TViewModel : class

在第一部分之后,我的演示者是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class PatientSearchCreatePresenter: IPresenter<IPatientFilterViewModel>
{
    IPatientBusinessService patient;

    /// <summary>
    /// Initializes a new instance of the <see cref="PatientFilterPresenter" /> class.
    /// </summary>
    public PatientSearchCreatePresenter(IPatientBusinessService Patient)
    {
        patient = Patient;
    }

我用来搜索和创建患者的表单是这样的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public partial class FormSearchCreatePatient : MvpForm<PatientSearchCreatePresenter,IPatientSearchCreateViewModel> , IPatientSearchCreateViewModel
{

应该在何处以及如何执行视图和presenter服务属性的Castle组件的安装和注册

非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-14 16:52:15

这是我以前是怎么做的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class BusinessContainer : WindsorContainer
{
    public BusinessContainer()
    {
        RegisterComponents();
    }

    private void RegisterComponents()
    {
        // Presenters
        AddComponentWithLifestyle("HelloWorld.presenter", typeof(HelloWorldPresenter), LifestyleType.Transient);
    }
}
}

由于包含IoC容器有点复杂,要获得完整的一步一步的内容,请查看here

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14858860

复制
相关文章
使用 Castle Windsor 实现 Web API 依赖注入
Web API 定义了依赖注入的接口 IDependencyResolver , 定义如下:
beginor
2020/08/10
8300
asp.net mvc相关开源项目推荐
asp.net mvc ctp版本发布不到一个月时间,在社区出现了丛多的优秀开源项目,社区的活跃性非常高哦,前一段时间园子里也引发了MVC和WebForm的讨论,现在给各位推荐几个相关的优秀项目,这些项目是MVC的价值的最佳证明。 1、 Asp.net mvc 和Castle 的MonoRail项目有着直接的渊源关系,第一个是Castle的Monorail项目,网站地址: http://www.castleproject.org/ ,建议读读这篇文章:MS MVC框架漩涡中的MonoRail未来。 我也在使
张善友
2018/01/22
2.1K0
GOLDENGATE内存管理以及如何正确设置内存参数
首先要说明是goldengate管理的内存不是物理内存,管理只是virtual memroy和swap disk,这个被称为cachesize management(COM).当goldengate进程启动后,COM向操作申请虚拟内存空间(不是真正物理内存,操作系统使用真正使用时候才会分配的机制来提高内存使用效率),只有COM真正需要实际内存空间,操作系统才会分配内存(分配内存空间也不是COM申请全部虚拟地址空间)
徐靖
2020/08/03
2.4K0
【C#】使用 Castle 实现 AOP,以及 Autofac 集成 Castle
Castle 是 2003 年诞生于 Apache Avalon 项目,目的是为了创建一个IOC 框架。发展到现在已经有四个组件:
丹枫无迹
2021/02/25
1.4K0
在 ASP.NET 2.0 中,Global.asax 文件没有后置代码,如何将Globa.asax中的页面移到代码文件中
学海无涯在asp.net页面上得到Castle容器的实例 中问如何解决这个问题,可以如下设定来完成这个功能 <%@ Application Inherits="MvpSample.Web.MvpSampleHttpApplication" Language="C#"  %> MvpSampleHttpApplication 代码 using System; using System.Web; using Castle.Windsor; using Castle.Windsor.Configuration.I
张善友
2018/01/19
1.6K0
在腾讯云添加解析时,提示 DNS 不正确如何处理?
如果是由于其他情况导致免费解析套餐的 DNS 服务器地址不正确,可前往 DNSPod 管理控制台,系统将提示 DNS 服务器地址不正确并给出对应的地址。
可乐不是你的
2021/12/29
9.3K0
在容器里设置GOMAXPROCS的正确姿势
GOMAXPROCS 是 Go 提供的非常重要的一个环境变量。通过设定 GOMAXPROCS,用户可以调整调度器中 Processor(简称P)的数量。由于每个系统线程必须要绑定 P ,P 才能把 G 交给 M 执行。如下图所示
KevinYan
2021/06/09
4.2K0
MVC、MVP以及Model2[上篇]
对于大部分面向最终用户的应用来说,它们都需要具有一个可视化的UI与用户进行交互,我们将这个UI称为视图(View)。在早期,我们倾向于将所有与视图相关的逻辑糅合在一起,这些逻辑包括数据的呈现、用户操作的捕捉与相应以及和针对数据存储(比如数据库)的操作。我们将这种设计模式称为自治视图(AV,Autonomous View)。 目录 一、自治视图 二、MVC模式 三、多层架构中的MVC 一、自治视图 说到自治视图,可能很多人会感到模式,但是我想很多人(尤其是.NET开发
蒋金楠
2018/02/08
5150
MVC、MVP以及Model2[上篇]
如何正确设置CRON定时任务
相信很多人看了标题后都会纳闷:设置 CRON 定时任务有什么难的?不过请相信我,正确设置 CRON 真的不是一件简单的事情!各位看官不妨听我慢慢道来。
LA0WAN9
2021/12/14
1K0
MVC, MVP, MVVM比较以及区别
作者:JustRun 原文:cnblogs.com/JustRun1983/p/3679827.html MVC, MVP和MVVM都是用来解决界面呈现和逻辑代码分离而出现的模式。以前只是对它们有部分
顶级程序员
2018/05/03
2.7K0
MVC, MVP, MVVM比较以及区别
博客站长如何正确设置SEO
提高PR就一个办法——和别的网站多多做友链,链接要越多越好,注意质量,不要选择太垃圾的网站。
老潘
2023/10/19
2510
博客站长如何正确设置SEO
JavaScript中的内存泄漏以及如何处理
随着现在的编程语言功能越来越成熟、复杂,内存管理也容易被大家忽略。本文将会讨论JavaScript中的内存泄漏以及如何处理,方便大家在使用JavaScript编码时,更好的应对内存泄漏带来的问题。 概述 像C语言这样的编程语言,具有简单的内存管理功能函数,例如malloc( )和free( )。开发人员可以使用这些功能函数来显式地分配和释放系统的内存。 当创建对象和字符串等时,JavaScript就会分配内存,并在不再使用时自动释放内存,这种机制被称为垃圾收集。这种释放资源看似是“自动”的,但本质是混淆的,
葡萄城控件
2018/06/21
1.4K0
使用ASP.NET实现Model View Presenter(MVP)
作者:Billy McCafferty 翻译:张善友 原文地址:http://www.codeproject.com/useritems/ModelViewPresenter.asp 这篇文章描述了ASP.NET 2.0使用Model-View-Presenter 模式实现业务逻辑与表现层的适当分离。 Download trivial example of MVP - 18 Kb Download simple Event-Handling MVP - 19 Kb Download sample M
张善友
2018/01/29
1.1K0
MVC、MVP以及Model2[下篇]
条件获取(Conditional Update)可以避免相同数据的重复传输,进而提高性能。条件更新(Conditional Update)用于解决资源并发操作问题。如果我们预先获取一个资源进行修改或者删除,条件更新检验帮助我们确认资源被获取出来到针对它的修改/删除操作被提交的这段时间内是否被其他人改动过。[源代码从这里下载] 一、HTTP对条件更新的支持 HTTP为条件更新提供了相应的报头,我们按照分析条件获取的方式来分析条件更新在HTTP请求/回复过程中的实现。客户端第一次向服务端发起针对某个资源的请求,
蒋金楠
2018/02/08
5150
在 TS 中如何处理特殊值
添加特殊值的一种方法是创建一个新类型,该类型是一些特殊值的基本类型的超集,这些特殊值称为哨兵。
阿宝哥
2020/04/08
2.4K0
在React 中如何处理事件?
在 React 中处理事件有几种常见的方式,具体取决于你使用的是类组件还是函数组件。
王小婷
2023/10/08
1890
事件总线知多少(2)
源码路径:Github-EventBus 事件总线知多少(1) 事件总线知多少(2) 1.引言 之前的一篇文章事件总线知多少(1),介绍了什么是事件总线,并通过发布订阅模式一步一步的分析重构,形
圣杰
2018/01/11
1.1K0
事件总线知多少(2)
MVP详细解析以及使用方法
github地址:https://github.com/libin7278/MPV-example 需要结合开源项目理解MVP并逐步学会使用,本开源项目正在逐步完善中
先知先觉
2019/01/21
8800
EasyGBS出现密码正确但无法登录的情况,如何处理?
随着现在新内核的EasyGBS、EasyNVR以及EasyCVR的使用场景越来越广泛,这些平台也被运用在大小不同的很多实际项目中。在功能上,基本都能满足大部分用户的需求,也有少部分项目需要进行功能的定制。
EasyNVR
2021/12/09
8660
Common Service Locator library
你在你的应用程序应用IoC容器了吗,你是否希望不依赖于某个具体的IoC,微软的模式与实践团队在Codeplex上发布的Common Service Locator。Common Service Locator 类库包含应用程序和框架开发者引用Service location共享的接口。这个类库提供了在IOC容器和Service locators之上抽象。使用这个类库允许一个应用程序在没有强引用依赖下间接的访问的能力。它所定义的接口非常简单: namespace Microsoft.Practices.Se
张善友
2018/01/31
9270

相似问题

Winforms MVP与Castle Windsor - DI for subforms?

10

Castle Windsor在何处以及如何设置日志记录工具

20

Nhibernate、WinForms、Castle Windsor:会话管理

20

Castle Windsor:使用约定注册以及特定的实现

20

castle windsor容器未正确连接属性

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文