c# - 在 ASP.NET/C# 中将文本附加到标签?

标签 c# asp.net

假设我有一个表单,用户可以在其中输入一些数据,然后单击“提交”。我进行了一些验证来检查后面代码中字段的长度,如果他们忘记了名称,我会在标签中设置文本:

        if (siteName.Length == 0)
        {
            lblErrorCreateSite.Text = "A Site Name is required.<br/>";
        }

如果我还有一个名为“描述”的字段,并且该字段也是空的,我可以将错误消息附加到 lblErrorCreateSite 还是必须创建另一个标签?

        if (siteDescription.Length == 0)
        {
            lblErrorCreateSite. // if both name and description is missing add some additional text to the label
        }

我只是想看看是否有比使用大量 if 语句更简单的方法(if this AND that...)

提前致谢。

编辑: 我刚刚意识到我可以做到

        if (siteName.Length == 0)
        {
            lblErrorCreateSite.Text = "A Site Name is required.<br/>";
        }
        if (siteDescription.Length == 0)
        {
            lblErrorCreateSite.Text = lblErrorCreateSite.Text + "A description is required.";
        }

最佳答案

出于性能原因,您可能需要使用 StringBuilder 构建错误消息并在完成构建输出后设置标签文本。

var error = new StringBuilder();
if(siteName.Length == 0)
{
  error.Append("A Site Name is required.<br/>");
}

// More validation...

lblErrorCreateSite.Text = error.ToString();

关于c# - 在 ASP.NET/C# 中将文本附加到标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4445120/

相关文章:

css - 我想上传一张原始大小的图片,然后把它放在一个固定大小的div中

asp.net - 设置 Response.Status 生成 "HTTP Status String is Not Valid"异常

c# - 代码 GetAsyncKeyState(VK_SHIFT) & 0x8000 中的这些数字是什么?它们是必不可少的吗?

c# - xaml DataGrid 绑定(bind)到字典中的字典中的字典

c# - 启动进程时重定向标准错误和标准输入时出现问题

c# - 为什么不尽可能使用 "in"作为方法参数呢?

c# - 如何在异步套接字中接收完整的屏幕截图?

c# - 无法在服务器上发送邮件。获取异常 SMTP 服务器需要安全连接或客户端未通过身份验证

asp.net - 在网站上线时重新发布 ASP.NET Web 应用程序

asp.net - 是否可以禁止打开 Visual Studio 中的 Web 窗体设计器?