为什么AssemblyResolve事件触发?
当CultureInfo ci = new CultureInfo("zh-CN");时触发事件AssemblyResolve
当CultureInfo ci = new CultureInfo("en-US");没有触发。
谁知道为什么?
class Program
{
static void Main(string[] args)
{
Test();
Console.WriteLine("Hello World!");
}
private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
Console.WriteLine(args.Name);//System.Collections.Concurrent.resources, Version=4.0.14.0, Culture=zh-CN, PublicKeyToken=b03f5f7f11d50a3a
return null;
}
public static void Test()
{
CultureInfo ci = new CultureInfo("zh-CN");
// CultureInfo ci = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
IDictionary<string, string> dic = new ConcurrentDictionary<string, string>();
dic.Add("key2", "value");
dic.Add("key2", "value");
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是ConcurrentDictionary 对中文支持的问题吗?