ASP.Net& # 39; s字符串.Replace在Windows 7工作站和Windows 2008 R2服务器上
本文关键字:Windows 工作站 2008 服务器 R2 Replace Net 字符串 ASP | 更新日期: 2023-09-27 18:11:37
我有一个ASP。.Net项目使用。Net框架4.0。如果我的项目发布到我的Windows 7工作站,以下行可以正常工作:
strTemplate = strTemplate.Replace("<span style='"background-color: yellow;'">", "");
但是,如果我将项目发布到Windows 2008 R2服务器上,则不会发生上述替换。没有误差;服务器只是找不到模式,也不会替换它。有人能告诉我为什么,或者如何解决这个问题吗?我试过在我的模式字符串前面放一个"@",但是然后字符串想要在"background-color"之前的双引号终止,无论反斜杠是否存在。
试试这个:
strTemplate = strTemplate.Replace(@"<span style=""background-color: yellow;"">", "");
使用@
符号时,必须加两个双引号。
编辑:假设您可以访问Windows 2008 R2服务器上正在运行的应用程序,请尝试在Windows 7工作站上运行以下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Globalization;
namespace CurrentCulture
{
public class Info : MarshalByRefObject
{
public void ShowCurrentCulture()
{
Console.WriteLine("Culture of {0} in application domain {1}: {2}",
Thread.CurrentThread.Name,
AppDomain.CurrentDomain.FriendlyName,
CultureInfo.CurrentCulture.Name);
}
}
class Program
{
static void Main(string[] args)
{
Info inf = new Info();
// Set the current culture to Dutch (Netherlands).
Thread.CurrentThread.Name = "MainThread";
Thread.CurrentThread.CurrentCulture = CultureInfo.CurrentCulture;
inf.ShowCurrentCulture();
Console.Read();
}
}
}
如果你的Windows 7工作站的当前区域性与你的Windows 2008 R2服务器不同,你需要调整你的Windows 2008 R2线程的当前区域性以符合你的期望。
你可以像这样设置你的线程的区域性:
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("nl-NL");
我的代码是从MSDN页面修改的:http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.currentculture(v=vs.110).aspx