Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字符串变量字符限制_C#_String_Variables - Fatal编程技术网

C# 字符串变量字符限制

C# 字符串变量字符限制,c#,string,variables,C#,String,Variables,我的字符串变量只存储4096个字符,我需要存储更多字符,我如何才能做到这一点 下面是我想做的 ServiceController[] myServices = ServiceController.GetServices(); String ServiceList = ""; foreach (ServiceController service in myServices) { ServiceList += service.DisplayName + "|||"; } retu

我的字符串变量只存储4096个字符,我需要存储更多字符,我如何才能做到这一点

下面是我想做的

ServiceController[] myServices = ServiceController.GetServices();
String ServiceList = "";

foreach (ServiceController service in myServices)
{

      ServiceList += service.DisplayName + "|||";

} 
return ServiceList;
当返回变量时,它只存储4096个字符,其余字符将被删除

另外,我需要将它们放在一个变量中,因为我要用它们创建一个URL并传递给我的Web服务

我需要将它们放在一个变量中,因为我要用它们创建一个URL并传递给我的Web服务

不,不要那样做

4096个字符的URL是一个非常糟糕的主意,不能保证有效

过长的URL通常是错误的。超过2000个字符的URL在最流行的web浏览器中不起作用。如果你想让你的网站为大多数互联网用户服务,就不要使用它们

制作一个包含id的短URL。将其余信息存储在数据库中,并将短id作为键

相关的


    • C#中的字符串大约有2Gig限制。因此字符串变量没有问题。净字符串长度限制为20亿个字符


      浏览器确实对URL的长度有限制,并且不同浏览器实现的长度限制不同。IE的限制通常是最短的,上次我在IE6时代检查时大约是2k。Firefox和Chrome比这要高得多,但仍然有一个限制。

      您的问题在别处-但不可能可靠地使用使用超过2000个字符的URL,您将需要完全另一种方法-请参见以下答案:


      (也可以使用
      StringBuilder
      来构建大型字符串)

      Net字符串的最大长度为2^31个代码点,而不是2^12。您可以使用StringBuilder而不是简单的字符串,但我建议您阅读答案并考虑新的解决方案。URL应该尽可能短。那么为什么它只存储2^12个字符呢?它不是,@Uzair。字符串可以存储很多,远不止这些。您确定这不是存储在该字符串中的数据的自然长度吗?在上述方法的末尾,
      ServiceList.Length
      的值是多少?在代码中的什么点测量字符串的长度?实际上,我只是从代码中调用一个网页,并将此变量作为参数传递。该网页只会分解字符串并插入数据库。我没有其他选择,因为windows服务无法访问数据库。我需要转到此路径…@UzairShahid:。网络字符串的最大长度不超过4096个字符。您在错误的位置查找错误。谢谢,但是为什么我的变量只存储4096个字符?您如何观察到字符串只包含4096个字符?在函数返回之前,是否在调试器中检查变量?或者,在您的价值通过几十个系统层之后,您是否正在查看一些web结果?