繁体   English   中英

Web.Config键值

[英]Web.Config Key value

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

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

请分享您的意见/答复。

大家好,对不起,您不清楚。这就是我想要的,正在在web.config文件中添加以下内容”我将其用作文本框的前缀,一旦用户单击特定键,以上内容在文本框中输入前缀,允许用户仅在后几位数后缀。

所以在我的代码中

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

但是我想在0001之后也加一个空格。 我如何在键值中给出它。


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

没有看到更多的代码,很难说出正在发生什么。 根据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);

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

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

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

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

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

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

除非使用魔术字符串,否则:

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

然后替换为代码:

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

这样,您就可以控制配置中空间的位置,同时仍能获得所需的结果。

此行为实际上是Raw XML解析的一部分,如下所述:

我只是使用下面的@Kyle建议验证了以下设置,并且确实起作用了,因此Kyle建议可以用作答案:

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

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

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

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

的app.config:

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

码:

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

从web.config中拉出字符串后,是否会修剪字符串? 您如何将设置用作前缀?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM