-
-
Notifications
You must be signed in to change notification settings - Fork 274
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't locate embedded satellite assembly #912
Comments
Excellent find. Are you interested in providing a fix? A few ways to help out could be:
Thank you! |
I will try write a fix but I have to read and learn repo fully |
It's hard to compile source and take unit test. |
A workaround, at the entry point of the program, modify the static int Main(string[] args)
{
var loader = typeof(Program).Assembly.GetType("Costura.AssemblyLoader");
if (loader != null)
{
var field = loader.GetField("assemblyNames", BindingFlags.Static | BindingFlags.NonPublic);
if (field != null && field.GetValue(null) is Dictionary<string, string> dict)
{
foreach (var item in dict.Keys.ToList())
{
if (item.Contains("zh-hans"))
{
var upperName = item.Replace("zh-hans", "zh-Hans");
if (!dict.ContainsKey(upperName))
{
dict.Add(upperName, dict[item]);
}
}
}
}
}
...
} |
here is my method to solve : link |
Now covered by unit tests. |
Please check all of the platforms you are having the issue on (if platform is not listed, it is not supported)
Component
AssemblyLoader.ReadFromEmbeddedResources() can't locate embedded satellite assembly because name contain uppercase letter
https://github.com/Fody/Costura/blob/develop/src/Costura.Template/Common.cs#L134C7-L134C7
requestedAssemblyName.CultureInfo.Name
may contain uppercase lettersVersion of Library
5.7.0
Version of OS(s) listed above with issue
Win
Steps to Reproduce
Expected Behavior
locate embedded satellite assembly successfully
Actual Behavior
The text was updated successfully, but these errors were encountered: