使用CreateSpecificCulture的Unity3d

使用CreateSpecificCulture的Unity3d,unity3d,Unity3d,为了在Unity3d应用程序中获取文化信息,我编写了一些代码: public static System.Globalization.CultureInfo GetCultureInfo() { if (cultureInfo == null) cultureInfo = System.Globalization.CultureInfo .CreateSpecificCulture(Localization.Data.Locale

为了在Unity3d应用程序中获取文化信息,我编写了一些代码:

public static System.Globalization.CultureInfo GetCultureInfo()
{
    if (cultureInfo == null)
        cultureInfo = System.Globalization.CultureInfo
                     .CreateSpecificCulture(Localization.Data.Locale);

    return cultureInfo;
}
当我在编辑器中运行应用程序时,效果很好。若我将应用程序构建为web并运行,那个么我会收到异常

at System.Security.SecurityManager.ThrowException (System.Exception ex) 
[0x00000] in <filename unknown>:0 
位于System.Security.SecurityManager.throweexception(System.Exception ex)
[0x00000]英寸:0

为什么它在web player中不起作用?

如果您查看web播放器使用的mscorlib中的CultureInfo.CreateSpecificCulture()方法(例如使用ILSpy),您将看到它标记为SecurityCritical(您可以阅读有关.Net安全性和

[SecurityCritical]
公共静态文化信息CreateSpecificCulture(字符串名称)

另外,游戏中的所有代码都被认为是“透明的”,所以不允许调用“安全关键”代码

此外,如果您选中此选项,则该方法将标记为WebPlayer不支持