如果字符串为空,我想跳过一行。
我这样试试:
public void ReadPostedData()
{
Sender = HttpContext.Current.Request.Form["MailFormSubmitter_sender"];
Subject = HttpContext.Current.Request.Form["MailFormSubmitter_subject"];
Message = HttpContext.Current.Request.Form["Message"];
PdfMessage = HttpContext.Current.Request.Form["PdfMessage"];
string IsCheckPDfMailSubmit = HttpContext.Current.Request.Form["IsCheckedPDFMailForm"];
if (IsCheckPDfMailSubmit == null || IsCheckPDfMailSubmit.Length == 0)
//string.IsNullOrEmpty(IsCheckPDfMailSubmit);
return IsCheckPDfMailSubmit == null;
IsCheckedPDFMailForm = IsCheckPDfMailSubmit.Equals("True", StringComparison.OrdinalIgnoreCase);
string v = HttpContext.Current.Request.Form["MailFormSubmitter_includeoverviewpdf"];
IncludeOverviewPdf = v.Equals("true,false", StringComparison.Ordinal) ? true : false;
// http://forums.asp.net/t/1314753.aspx
ApplicantMailNodeSelectors[0] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress1"];
ApplicantMailNodeSelectors[1] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress2"];
ApplicantMailNodeSelectors[2] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress3"];
}
关于这一行:
if (IsCheckPDfMailSubmit == null || IsCheckPDfMailSubmit.Length == 0)
如果为null,则不执行此行:
IsCheckedPDFMailForm = IsCheckPDfMailSubmit.Equals("True", StringComparison.OrdinalIgnoreCase);
我这样试试:
return IsCheckPDfMailSubmit == null;
但后来我收到以下错误:
错误6由于'Seneca.SfsLib.Connectors.MailFormSubmitterModel.ReadPostedData()'返回void,因此返回关键字后面不能包含对象表达式
那么如何跳过它?
答案 0 :(得分:4)
如果要根据if
语句中的条件退出函数,当方法具有return;
作为返回类型时,只使用void
:
if (IsCheckPDfMailSubmit == null || IsCheckPDfMailSubmit.Length == 0) {
return;
}
或者,不是退出函数的midde,而是可以反转条件并将其余代码放在if
语句中:
if (!(IsCheckPDfMailSubmit == null || IsCheckPDfMailSubmit.Length == 0)) {
// ...
// rest of the code in the method
// ...
}
如果您只想跳过以下行但是继续使用方法中的其余代码,请反转条件并将该行放在if
语句中:
if (!(IsCheckPDfMailSubmit == null || IsCheckPDfMailSubmit.Length == 0)) {
IsCheckedPDFMailForm = IsCheckPDfMailSubmit.Equals("True", StringComparison.OrdinalIgnoreCase);
}
答案 1 :(得分:0)
您的方法是无效类型,因此您无法返回任何值。表达式return IsCheckPDfMailSubmit == null;
尝试返回bool不正确,因此会出现编译错误。
您可以通过多种方式解决,一种方法是更改if条件以检查备用案例。
public void ReadPostedData()
{
Sender = HttpContext.Current.Request.Form["MailFormSubmitter_sender"];
Subject = HttpContext.Current.Request.Form["MailFormSubmitter_subject"];
Message = HttpContext.Current.Request.Form["Message"];
PdfMessage = HttpContext.Current.Request.Form["PdfMessage"];
string IsCheckPDfMailSubmit = HttpContext.Current.Request.Form["IsCheckedPDFMailForm"];
if (IsCheckPDfMailSubmit != null && IsCheckPDfMailSubmit.Length > 0)
// A better option is to use string.IsNullOrEmpty:
// if (!string.IsNullOrEmpty(IsCheckPDfMailSubmit))
{
IsCheckedPDFMailForm = IsCheckPDfMailSubmit.Equals("True", StringComparison.OrdinalIgnoreCase);
string v = HttpContext.Current.Request.Form["MailFormSubmitter_includeoverviewpdf"];
IncludeOverviewPdf = v.Equals("true,false", StringComparison.Ordinal) ? true : false;
// http://forums.asp.net/t/1314753.aspx
ApplicantMailNodeSelectors[0] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress1"];
ApplicantMailNodeSelectors[1] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress2"];
ApplicantMailNodeSelectors[2] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress3"];
}
}
答案 2 :(得分:-1)
public void ReadPostedData()
{
Sender = HttpContext.Current.Request.Form["MailFormSubmitter_sender"];
Subject = HttpContext.Current.Request.Form["MailFormSubmitter_subject"];
Message = HttpContext.Current.Request.Form["Message"];
PdfMessage = HttpContext.Current.Request.Form["PdfMessage"];
string IsCheckPDfMailSubmit = HttpContext.Current.Request.Form["IsCheckedPDFMailForm"];
if (IsCheckPDfMailSubmit != null) {
if(IsCheckPDfMailSubmit.Length > 0){
IsCheckedPDFMailForm = IsCheckPDfMailSubmit.Equals("True", StringComparison.OrdinalIgnoreCase);
}
}
string v = HttpContext.Current.Request.Form["MailFormSubmitter_includeoverviewpdf"];
IncludeOverviewPdf = v.Equals("true,false", StringComparison.Ordinal) ? true : false;
// http://forums.asp.net/t/1314753.aspx
ApplicantMailNodeSelectors[0] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress1"];
ApplicantMailNodeSelectors[1] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress2"];
ApplicantMailNodeSelectors[2] = HttpContext.Current.Request.Form["MailFormSubmitter_applicantemailaddress3"];
}