Belirli bir dll sürümünün kullanımını zorlamak için bir yol var mı? app.config'tenBir dll sürümünü kullanarak zorlamak için bir yolu var mı?
(backstory) SQL Compact 3.5 kullanıyoruz ve iş nedeniyle (evet, biliyorum) şimdilik SQL Compact 3.5 SP1'e geçemiyoruz. System.Data.SqlServerCe ve derleme dizinimizdeki tüm yönetilmeyen dll'lerimiz var, ancak SP1 yüklüyse, uygulama yüklenir ve SP1'in yönetilen dll'sini kullanır (ve uzantı olarak, yönetilmeyenleri de varsayardım).
öncesi sp1 dll sürüm numarası 3.5.0.0 olduğunu sp1 version = ben CopyLocal için System.Data.SqlServerCe = true ve Özgül Sürüm referansı kurdum 3.5.1.0
olduğunu true, ancak SP1 sürümü, pre-sp1 sürümü derleme dizinimizde olsa bile (GAC'den birini kullandığını varsayar) hala kullanıyor. Referansı GAC'den eklemenin yanı sıra dosya sistemine manuel olarak girmeyi ve dll'ye doğrudan başvurmayı denedim.
(sadece istemciler ihtiyacı diğer yazılım için hizmet paketi yüklüyorsanız, şunu açıklığa kavuşturalım, ama biz hala hizmet paketi yüklü olduğunda bile önceden sp1 sürümünü çalıştırmak için gereken kadar)
mi var herhangi Oluşturma dizinde sahip olduğumuz birini kullanmak için zorlamak için .net
GÜNCELLEME:
Ben this question gibi uygulama config geçersiz kılma koymak, ancak montaj bağlama günlük görüntüleyici olan bana verir bu:
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Projects\ConsoleApplication11\bin\Debug\ConsoleApplication11.exe.Config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Redirect found in application configuration file: 3.5.0.0 redirected to 3.5.0.0.
LOG: Publisher policy file is found at C:\Windows\assembly\GAC_MSIL\policy.3.5.System.Data.SqlServerCe\3.5.0.0__89845dcd8080cc91\publisher.config.
LOG: Publisher policy file redirect is found: 3.5.0.0 redirected to 3.5.1.0.
LOG: ProcessorArchitecture is locked to MSIL.
LOG: Post-policy reference: System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL
LOG: Found assembly by looking in the GAC.
LOG: Binding succeeds. Returns assembly from C:\Windows\assembly\GAC_MSIL\System.Data.SqlServerCe\3.5.1.0__89845dcd8080cc91\System.Data.SqlServerCe.dll.
LOG: Assembly is loaded in default load context.
Bu 3.5 için yapılandırma benziyor. GAC'de 1 montaj, onu geçersiz kılar. Sorunu app.config sayfamdan zorlamak için herhangi bir yol var mı?
Hayır, biz 3.5.0.0 durumdayız. Sunucu bir sp1 istemcisi ve bir pre-sp1 sunucusu (sunucu yeni bir ay içinde olmayacak - yeni bir bant ve tüm bu gerçekleşecek) bir çoğaltma kırıyor gibi sp1 pre-sp1'de sorunudur. – Gareth