这就是我如何处理问题,以确定它是真还是假,
确实如此,进入内容但却是假的,现在就停止了。
它应该能够做的是显示文本并同时刷新页面给用户不能再将内容重新投入。并且显示内容都是真的。
UploadSuccesBesked.cs
public class UploadSuccesBesked
{
public class validationResponse
{
public string TrueIndhold { get; set; }
public string Tekst { get; set; }
}
public static validationResponse UploadIndhold(string TrueIndhold)
{
validationResponse UploadIndhold = new validationResponse();
int load = 3;
if (TrueIndhold == "succes")
{
UploadIndhold.Tekst = "<div class='alert alert-success'><strong>Succes - Jubbiii!!!</strong> Der kom ingen fejl.!</div>";
HttpContext.Current.Response.AddHeader("REFRESH", load + ";URL=?opdater=true");
return UploadIndhold;
}
else if (TrueIndhold == "error")
{
UploadIndhold.Tekst = "<div class='alert alert-danger'><strong>Fejl!!</strong> Der er sket en fejl, Kontakt os hvis det sker igen!</div>";
HttpContext.Current.Response.AddHeader("REFRESH", load + ";URL=?opdater=false");
return UploadIndhold;
}
return null;
}
}
eidtpassword.aspx.cs
if (UploadSuccesBesked.UploadIndhold("succes"))
{
PanelIndhold.Visible = true;
LiteralBesked.Text = /*Tekst come here*/;
}
错误讯息:
无法隐式转换类型&#39; UploadSuccesBesked.validationResponse&#39;到了布尔&#39;
我刚刚写完文本的原因,例如成功,现在丹麦语文本已列入此处。
答案 0 :(得分:1)
这是您方法的签名:
public static validationResponse UploadIndhold(string TrueIndhold)
// ^^^^^^^^^^^^^^^^^^
下划线部分是你的返回类型。因此,您的方法返回该类型的对象(或null)。
在你的支票中,你这样做:
if (UploadSuccesBesked.UploadIndhold("succes"))
这会尝试将方法的返回值(如上所述为validationResponse
对象)转换为bool,因为if语句需要布尔值作为条件。这当然不起作用。
您应该做的是检查返回值是否为null
。如果保存返回值,还可以重复使用文本:
validationResponse result = UploadSuccesBesked.UploadIndhold("succes");
if (result != null)
{
PanelIndhold.Visible = true;
LiteralBesked.Text = result.Tekst;
}