Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# mvp类型转换问题_C#_Mvp - Fatal编程技术网

C# mvp类型转换问题

C# mvp类型转换问题,c#,mvp,C#,Mvp,我有一个简单的mvp演示如下: public partial class _Default : System.Web.UI.Page, IView { protected void Page_Load(object sender, EventArgs e) { } #region IView Members public string RadiusText { get { return TextRadius.Text; }

我有一个简单的mvp演示如下:

public partial class _Default : System.Web.UI.Page, IView
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    #region IView Members

    public string RadiusText
    {
        get { return TextRadius.Text; }
        set { TextRadius.Text = value; }
    }

    public string ResultText
    {
        get { return LabelResult.Text; }
        set { LabelResult.Text = value; }
    }

    #endregion
    protected void ButtonResult_Click(object sender, EventArgs e)
    {
        CPresenter presenter = new CPresenter(this);
        presenter.CalculateCircleArea();
    }
}

/// <summary>
/// interface view 1
/// </summary>
public interface ICircleModel
{
    double getArea(double radius);
}

public class CModel : ICircleModel
{
    public CModel() { }

    #region ICircleModel Members

    public double getArea(double radius)
    {
        return Math.PI * radius * radius;
    }

    #endregion
}

/// <summary>
/// interface view 2
/// </summary>
public interface IView
{
    string RadiusText { get; set; }
    string ResultText { get; set; }
}


/// <summary>
/// Summary description for Presenter
/// </summary>
public class CPresenter
{
    IView mview;
    public CPresenter(IView view)
    {
        mview = view;
    }
    public double CalculateCircleArea()
    {
        CModel model = new CModel();
        mview.ResultText = model.getArea(Double.Parse(mview.RadiusText)).ToString();
        return mview.ResultText.ToString();
    }
}
public分部类\u默认值:System.Web.UI.Page,IView
{
受保护的无效页面加载(对象发送方、事件参数e)
{
}
#区域I查看成员
公共字符串RadiusText
{
获取{return TextRadius.Text;}
设置{TextRadius.Text=value;}
}
公共字符串ResultText
{
获取{return LabelResult.Text;}
设置{LabelResult.Text=value;}
}
#端区
受保护的无效按钮结果单击(对象发送者,事件参数e)
{
CPresenter presenter=新的CPresenter(此);
presenter.CalculateReclearea();
}
}
/// 
///界面视图1
/// 
公共接口ICircleModel
{
双面积(双半径);
}
公共类CModel:ICircleModel
{
公共CModel(){}
#区域ICircleModel成员
公共双通道区域(双半径)
{
返回Math.PI*半径*半径;
}
#端区
}
/// 
///界面视图2
/// 
公共接口IView
{
字符串radiustText{get;set;}
字符串ResultText{get;set;}
}
/// 
///演示者的摘要说明
/// 
公共类CPresenter
{
IView mview;
公共CPresenter(IView视图)
{
mview=视图;
}
公共双计算CLEAREA()
{
CModel model=新的CModel();
mview.ResultText=model.getArea(Double.Parse(mview.radiustText)).ToString();
返回mview.ResultText.ToString();
}
}
我得到的错误是:

错误1无法将类型“string”隐式转换为“double”

当方法签名将double定义为retrurn参数时,CPresenter类中的calculatecRClearea()方法正在返回字符串。将return参数更改为字符串或从方法中返回double