asp:textbox 传递给 C# 变量时删除空格后的文本

asp:textbox text removed after whitespace when passed to C # Variable

我有一个站点,用户可以在该站点的描述字段中输入一些单行,稍后将添加到创建的工作文件夹中。

我的问题是,如果他们在描述字段中输入的文本包含一个空格,那么当我从 .cs 页面调用时,它只会获取从开头到该空格的文本。我想要用户输入的全部值。

例如: "This is a Description" 结果:"This"

Default.ASPX 页数:

<asp:UpdatePanel ID="UpdatePanel4" runat="server">
  <ContentTemplate>
    <table border="0" cellpadding="0" cellspacing="0">
    <tr><td>&nbsp;</td></tr>
    <tr>
    <td>
      <span class="SectionHeader">Beskrivning
        <asp:CustomValidator ID="CustomValidatorDescription" runat="server" 
           ControlToValidate="TextBoxDescription" EnableClientScript="False" 
           onservervalidate="CustomValidatorDescription_ServerValidate" 
           ValidateEmptyText="True" ForeColor="#DD0000">
        </asp:CustomValidator>
      </span><br />
      <asp:TextBox ID="TextBoxDescription" runat="server" MaxLength="150" 
           Width="562px" CssClass="textinput" TabIndex="4"></asp:TextBox>
    </td>
    <td align="left">
      <asp:ImageButton ID="ImageButton4" runat="server" BorderStyle="None" 
                                BorderWidth="0px" CausesValidation="False" 
                     ImageUrl="~/images/help_icon_off.png" CommandName="4" 
        oncommand="ImageButton_Command" ToolTip="Visa hjälp för fältet" />
    </td>
    </tr>
    </table>
    <asp:Panel ID="Panel4" runat="server" CssClass="tip" Visible="False">
            Är den (metadata) text som kommer att visas i uppdragskatalogen i filutforskaren 
            i Windows.<br />
    Denna information går att ändra i efterhand.
    </asp:Panel>
  </ContentTemplate>
</asp:UpdatePanel>

我从 ASPX 文件中发布了整个内容,以防你们需要检查 .cs 使用的其他一些内容,例如 "UpdatePanel4" 或 "CustomValidatorDescription"

Default.ASPX.CS:

 protected void ButtonCreateDir_Click(object sender, EventArgs e)
    {
 string description = TextBoxDescription.Text;   

然后我使用 "description" 来完成我需要做的事情。 我还有 2 个下拉列表和另一个我传递给 .cs 页面的文本字段,它工作正常,尽管这些字段上没有空格。

事实证明这是一个简单但棘手的修复:)

cs 页面触发位于本地的 powershell 脚本,其中包含用户在页面上填写的数据。由于调用 powershell 脚本时需要 " 之间的空格。这解决了问题:

string vartDescription = "'" + TextBoxDescription.Text + "'";

所以调用 "wrong" 的是 powershell 脚本。 :)