2

我想知道如何在字符串中为 web.config 文件中的 vaue 字段留出一个空格。例如<add key="number" value="0001 " />

我想在上面的值字段中的“1”之后输入一个空格,我尝试直接在值字段上输入一个空格,但这不会发生。

请分享您的意见/回复。

大家好,抱歉不清楚..这就是我想要的,我在 web.config 文件中添加以下内容''我在文本框中使用它作为前缀,一旦用户点击特定键,上面在文本框中输入前缀,允许用户只为净少数数字添加后缀。

所以在我的代码中

Tbx.text=app.DeploymentConfigurations["number"];

但我希望在 0001 之后也有一个空格作为前缀。我如何在键值中给出它。


注意:我不希望空间被硬编码。我已经这样做了。空间现在是一项要求,但以后可能会改变。因此,如果我在我的应用程序设置中包含空间会更好,这样用户只需在配置文件而不是代码上更改它。谢谢你们

4

4 回答 4

1

没有看到更多代码,很难知道发生了什么。根据 D Stanley 的回答,这对我有用。

但是,由于您正在处理用户输入,因此最好还是强制执行前缀服务器端;一些选项包括:

1)将前缀放在用户无法编辑的单独文本框或标签中,放在用户可编辑的内容前面。这应该消除您的前缀被用户输入的可能性。

2)你可以格式化你的文本服务器端;也不需要硬编码,很简单:

<add key="Prefix" value="0001" />
<add key="Separator" value=" " />

然后,您可以执行以下操作:

string overall = String.Format("{0}{1}{2}", ConfigurationManager.AppSettings["Prefix"], ConfigurationManager.AppSettings["Separator"], userInputtedText);

然后,用户当然可以删除空格或将其更改为不同的字符或独立于其他任何字符的字符。

于 2012-06-07T23:11:10.097 回答
0

您使用的是标准 AppSettings 元素还是一些自定义设置提供程序?这对我有用:

应用程序配置:

<appSettings>
  <add key="Test" value="123456 "/>
</appSettings>

代码:

string setting = ConfigurationManager.AppSettings["Test"];
Debug.Assert(setting.Length==7);  // returns true

从 web.config 中拉出字符串后是否有东西修剪字符串?您如何使用该设置作为前缀?

于 2012-06-07T22:32:36.463 回答
0

为什么不在代码中添加空格?

Tbx.text=app.DeploymentConfigurations["number"] + " ";

由于您的要求要求您在配置中有空间,请尝试以下操作:

<add key="number" value="0001&#x20;" />

&#x20;是 unicode 中的空格字符。

除此之外,请使用魔术字符串:

<add key="number" value="0001{_}" />

然后在代码中替换:

Tbx.text=app.DeploymentConfigurations["number"].Replace("{_}", " ");

这将允许您控制配置中空间的位置,同时仍能实现您正在寻找的结果。

于 2012-06-07T22:23:01.447 回答
0

这种行为实际上是原始 XML 解析的一部分,如下所述:

我刚刚使用@Kyle 建议验证了如下设置,它确实有效,因此凯尔建议可以用作答案:

在您的代码中,我认为最好的方法如下:

string s = app.DeploymentConfigurations["number"];
Tbx.text= s.PadRight(s.Length + 1);

这将为您的价值增加 1 个空间。

于 2012-06-07T22:26:32.240 回答