sql >> Database >  >> RDS >> Sqlserver

Geïsoleerde opslaguitzondering:kan de identiteit van het domein niet bepalen

Je kunt hier een oplossing vinden:http://rekiwi.blogspot.com/2008/12/unable-to-determine-identity-of-domain.html

Maak in de COM-component een nieuw AppDomain met het juiste bewijs en voer de code daarin uit.

Hier is een codevoorbeeld dat het probleem voor mij heeft opgelost:

AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = AppDomain.CurrentDomain.BaseDirectory.ToString();

//Then we need our evidence
System.Security.Policy.Evidence evidence = new System.Security.Policy.Evidence();
evidence.AddHost(new System.Security.Policy.Zone(System.Security.SecurityZone.MyComputer));

//Now we can fire up an AppDomain running with that evidence.
AppDomain domain = AppDomain.CreateDomain("YourDll.YourClass", evidence, setup);

YourDll.YourClass yourclass = (YourDll.YourClass)domain.CreateInstanceAndUnwrap(typeof(YourDll.YourClass).Assembly.FullName, typeof(YourDll.YourClass).FullName);

yourclass.CallYourMethod();

Alle typen die u in AppDomains wilt rangschikken, moeten gemarkeerd zijn met [Serializable()] en moeten worden overgenomen van MarshalByRefObject. Bijvoorbeeld:

namespace YourDll
{
[Serializable()]
public class YourClass: MarshalByRefObject
{
...



  1. Byte-array opslaan in sql-server

  2. PostGIS-equivalent van ArcMap Union

  3. Kan ik in MySQL één rij kopiëren om in dezelfde tabel in te voegen?

  4. Goede manier om tabelalias te gebruiken in Update-instructie?