首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何以及在何处正确设置Castle Windsor v2.5 for MVP Winforms

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

Stack Overflow用户
提问于 2013-02-14 01: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
运行
复制
public interface IPresenter<TViewModel>
{
    TViewModel View { get; set; }

    event EventHandler ViewInitialized;

    void OnViewInitialized(EventArgs e);

    event EventHandler ViewLoaded;

    void OnViewLoaded(EventArgs e);
}

基本形式是

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

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

代码语言:javascript
代码运行次数:0
运行
复制
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
运行
复制
public partial class FormSearchCreatePatient : MvpForm<PatientSearchCreatePresenter,IPatientSearchCreateViewModel> , IPatientSearchCreateViewModel
{

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

非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-15 00:52:15

这是我以前是怎么做的:

代码语言:javascript
代码运行次数:0
运行
复制
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

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档