Inexplicable MissingFieldException

In the following code snippet, he throws a MissingFieldException: Field Not Found: DepthBidLevels, but only in some of the strange situations that are described below.

for(int i=DomSize-1; i>=0; i--) { fixed( ushort *p = binary.DepthBidLevels) { if( i!=DomSize-1) { builder.Append( ","); } builder.Append( *(p + i)); } 

A type for a binary variable is a structure that is defined in a separate document:

 unsafe public struct TickBinary { public const int DomLevels = 5; public const int SymbolSize = 8; public const int minTickSize = 256; public long Symbol; public byte contentMask; public long Id; public long UtcTime; public long UtcOptionExpiration; public long Strike; public long Bid; public long Ask; public byte Side; public long Price; public int Size; public fixed ushort DepthAskLevels[DomLevels]; public fixed ushort DepthBidLevels[DomLevels]; } 

Well, the code above works depending on where and how it compiles. While both assmeblies (snippet assembly and TickBinary assembly) are compiled on the same computer, they work fine.

However, if the fragment assembly is built on another machine from the TickBinary assembly and then launched together, then a MissingFieldException will be thrown.

You may wonder why they are built on different machines? This project offers part of the code in the form of open source code and other parts of the project in the form of precompiled binary files. Therefore, users compile part of themselves and simply refer to precompiled assemblies.

NOTE. This snippet is always compiled with the Release configuration, which means that optimization is enabled.

But what seems inexplicable to me is how it can give an exception to the excluded field for the DepthBidLevels field. This does not mean that you use any reflection or does the fixed keyword use reflection under the covers? I doubt it because snippet code's performance is fast.

EDIT: I judge that the key factor is whether assemblies are assembled from msbuild from the command line or compiled through Visual Studio 2008. If everything is compiled on the command line, this works. If everything is compiled through Visual Studio, it works. But using TickZoomEngine, created by MSBuild, and launching it with TickZoomAPI1.0, which was created using Visual Studio 2008, fails. When performing these experiments, zero code change occurs. Why is Visual Studio compilation incompatible with MSBuild compilation?

EDIT: Due to the idea below, here is a dump of all assemblies and their links. Everything seems to be in order. In particular, the latest assembly, TickZoomEngine, is one that has a code snippet that refers to the type of structure in the TickZoomAPI1.0 assembly.

 Listing all assembly references... mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Microsoft.VisualStudio.HostingProcess.Utilities, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: Microsoft.VisualStudio.HostingProcess.Utilities.Sync, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: Microsoft.VisualStudio.Debugger.Runtime, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Runtime.Serialization.Formatters.Soap, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Deployment, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Microsoft.VisualStudio.HostingProcess.Utilities.Sync, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Microsoft.VisualStudio.Debugger.Runtime, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 vshost, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: Microsoft.VisualStudio.HostingProcess.Utilities.Sync, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: Microsoft.VisualC, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Transactions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.EnterpriseServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Deployment, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Data.SqlXml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TickZoomGUI, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomCharting, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPresentation, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: WindowsFormsUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TickZoomPresentation, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a WindowsFormsUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomPresentation, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null PluginLoader, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: ICSharpCode.SharpZipLib, Version=0.85.5.452, Culture=neutral, PublicKeyToken=1b03e6acf1164f73 TickZoomLogging, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821 Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TickZoomCharting, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: ZedGraph, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: WindowsFormsUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.DirectoryServices.Protocols, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.EnterpriseServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Web.RegularExpressions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 TickZoomPluginCommon, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Configuration.Install, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration.Install, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Configuration.Install, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Runtime.Serialization.Formatters.Soap, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 TickZoomPluginExamples, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPluginCommon, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ProviderCommon, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ProviderUtilTests, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: nunit.framework, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: ProviderUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 TickZoomLoaderTests, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: nunit.framework, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: PluginLoader, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null ExamplesTest, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPluginCommon, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: nunit.core, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: nunit.core.interfaces, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomCharting, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPresentation, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: WindowsFormsUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPluginExamples, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomGUI, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomStarters, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: nunit.framework, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: TickZoomTickUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: ZedGraph, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a nunit.core, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: nunit.core.interfaces, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a nunit.core.interfaces, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 LimeProviderUnitTests, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 TickZoomTesting, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomPluginCommon, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomPluginExamples, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomCharting, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: TickZoomStarters, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: nunit.framework, Version=2.5.1.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77 Reference: TickZoomTickUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: tzdata, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null TickZoomEngine, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomAPI1.0, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Reference: TickZoomTickUtil, Version=1.4.8.8462, Culture=neutral, PublicKeyToken=null Reference: System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 
+4
source share
4 answers

This was solved by simply moving the method that did not fall into another dll. So, now the field that it refers to is in the same DLL.

It just means that the loader logic is rough when it comes to snapping to fixed string fields at runtime.

+3
source

Compare the two executables (assemblies you compile) for reference assemblies (dependencies).

 System.Reflection.Assembly::GetReferencedAssemblies() 

and compare. Perhaps there are version differences between the frameworks that they compile.

+2
source

I also had this problem. It turned out that my project was referring to two .dlls, name them A.dll and B.dll .

A.dll also refers to B.dll . B.dll been updated since the last time I built my project to change some fields in the properties. After I built my project again, I ran into the problem described here.

It turned out that since A.dll not been rebuilt since the update of B.dll , A.dll expecting B.dll with fields, but my project recently created B.dll had properties.

+2
source

Strive to hide fields behind properties. As soon as I hid the volatile field behind the property and made it unstable, a very similar problem disappeared.

0
source

Source: https://habr.com/ru/post/1411874/


All Articles