diff --git a/src/GitHub.VisualStudio/GitHub.VisualStudio.csproj b/src/GitHub.VisualStudio/GitHub.VisualStudio.csproj
index 7193457c06..7a4520c80c 100644
--- a/src/GitHub.VisualStudio/GitHub.VisualStudio.csproj
+++ b/src/GitHub.VisualStudio/GitHub.VisualStudio.csproj
@@ -210,9 +210,7 @@
-
- Helpers\SharedDictionaryManager.cs
-
+
diff --git a/src/GitHub.VisualStudio/GitHubPackage.cs b/src/GitHub.VisualStudio/GitHubPackage.cs
index 06be556f08..4a4c72dc75 100644
--- a/src/GitHub.VisualStudio/GitHubPackage.cs
+++ b/src/GitHub.VisualStudio/GitHubPackage.cs
@@ -53,6 +53,12 @@ public class GitHubPackage : Package
};
readonly IServiceProvider serviceProvider;
+ static bool resolverInitialized;
+
+ static GitHubPackage()
+ {
+ InitializeAssemblyResolver();
+ }
public GitHubPackage()
{
@@ -64,10 +70,16 @@ public GitHubPackage(IServiceProvider serviceProvider)
this.serviceProvider = serviceProvider;
}
- protected override void Initialize()
+ public static void InitializeAssemblyResolver()
{
+ if (resolverInitialized)
+ return;
AppDomain.CurrentDomain.AssemblyResolve += LoadAssemblyFromRunDir;
+ resolverInitialized = true;
+ }
+ protected override void Initialize()
+ {
base.Initialize();
IncrementLaunchCount();
diff --git a/src/common/SharedDictionaryManager.cs b/src/GitHub.VisualStudio/Helpers/SharedDictionaryManager.cs
similarity index 87%
rename from src/common/SharedDictionaryManager.cs
rename to src/GitHub.VisualStudio/Helpers/SharedDictionaryManager.cs
index 5085aaa0b0..40a41467bd 100644
--- a/src/common/SharedDictionaryManager.cs
+++ b/src/GitHub.VisualStudio/Helpers/SharedDictionaryManager.cs
@@ -6,6 +6,11 @@ namespace GitHub.VisualStudio.Helpers
{
public class SharedDictionaryManager : ResourceDictionary
{
+ static SharedDictionaryManager()
+ {
+ GitHubPackage.InitializeAssemblyResolver();
+ }
+
static readonly Dictionary resourceDicts = new Dictionary();
Uri sourceUri;