First off, I am using DNN 4.0.3.
I have successfully converted several modules from DNN 3.x to 4.x and have created Source and No-Source distributables that install fine. However, there are a few modules that when using a source installation work fine, but when I create a no-source distributable (using either the Web Deployment Projects or the Publish options) I receive the 'Min-Max' error. Upon examination of the log I see the following:
InnerException:
Could not load file or assembly 'App_global.asax, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. The
system cannot find the file specified. Message:
DotNetNuke.Services.Exceptions.ModuleLoadException: Could not load file
or assembly 'App_global.asax, Version=0.0.0.0, Culture=neutral,
PublicKeyToken=null' or one of its dependencies. The system cannot find
the file specified. ---> System.Web.HttpParseException: Could not
load file or assembly 'App_global.asax, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. The
system cannot find the file specified. ---> System.Exception: Could
not load file or assembly 'App_global.asax, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. The
system cannot find the file specified. --->
System.IO.FileNotFoundException: Could not load file or assembly
'App_global.asax, Version=0.0.0.0, Culture=neutral,
PublicKeyToken=null' or one of its dependencies. The system cannot find
the file specified.
File name: 'App_global.asax, Version=0.0.0.0, Culture=neutral,
PublicKeyToken=null' at
System.Signature._GetSignature(SignatureStruct& signature, Void*
pCorSig, Int32 cCorSig, IntPtr fieldHandle, IntPtr methodHandle, IntPtr
declaringTypeHandle) at
System.Signature.GetSignature(SignatureStruct& signature, Void*
pCorSig, Int32 cCorSig, RuntimeFieldHandle fieldHandle,
RuntimeMethodHandle methodHandle, RuntimeTypeHandle
declaringTypeHandle) at System.Signature..ctor(Void* pCorSig, Int32
cCorSig, RuntimeTypeHandle declaringTypeHandle) at
System.Reflection.RuntimePropertyInfo.get_Signature() at
System.RuntimeType.RuntimeTypeCache.MemberInfoCache`1.PopulateProperties(Filter
filter, RuntimeTypeHandle declaringTypeHandle, Int32* tkAssociates,
Int32 cProperties, Hashtable csPropertyInfos, List`1 list) at
System.RuntimeType.RuntimeTypeCache.MemberInfoCache`1.PopulateProperties(Filter
filter, RuntimeTypeHandle declaringTypeHandle, Hashtable
csPropertyInfos, List`1 list) at
System.RuntimeType.RuntimeTypeCache.MemberInfoCache`1.PopulateProperties(Filter
filter) at
System.RuntimeType.RuntimeTypeCache.MemberInfoCache`1.Populate(String
name, MemberListType listType, CacheType cacheType) at
System.RuntimeType.RuntimeTypeCache.MemberInfoCache`1.GetMemberList(MemberListType
listType, String name, CacheType cacheType) at
System.RuntimeType.GetPropertyCandidates(String name, BindingFlags
bindingAttr, Type[] types, Boolean allowPrefixLookup) at
System.RuntimeType.GetProperties(BindingFlags bindingAttr) at
System.ComponentModel.ReflectTypeDescriptionProvider.ReflectGetProperties(Type
type) at
System.ComponentModel.ReflectTypeDescriptionProvider.ReflectedTypeData.GetProperties()
at
System.ComponentModel.TypeDescriptor.TypeDescriptionNode.DefaultTypeDescriptor.System.ComponentModel.ICustomTypeDescriptor.GetProperties()
at System.ComponentModel.TypeDescriptor.GetProperties(Type
componentType) at
System.Web.UI.ControlBuilder.get_PropertyDescriptors() at
System.Web.UI.ControlBuilder.ValidatePersistable(PropertyInfo propInfo,
Boolean usingSetAttribute, Boolean mainDirectiveMode, Boolean
simplePropertyEntry, String filter) at
System.Web.UI.ControlBuilder.AddProperty(String filter, String name,
String value, Boolean mainDirectiveMode) at
System.Web.UI.ControlBuilder.PreprocessAttribute(String filter, String
attribname, String attribvalue, Boolean mainDirectiveMode) at
System.Web.UI.ControlBuilder.PreprocessAttributes(ParsedAttributeCollection
attribs) at System.Web.UI.ControlBuilder.Init(TemplateParser parser,
ControlBuilder parentBuilder, Type type, String tagName, String id,
IDictionary attribs) at
System.Web.UI.ControlBuilder.CreateChildBuilder(String filter, String
tagName, IDictionary attribs, TemplateParser parser, ControlBuilder
parentBuilder, String id, Int32 line, VirtualPath virtualPath,
Type& childType, Boolean defaultProperty) at
System.Web.UI.TemplateParser.ProcessBeginTag(Match match, String
inputText) at System.Web.UI.TemplateParser.ParseStringInternal(String
text, Encoding fileEncoding)
WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value
[HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind
failure logging.
To turn this feature off, remove the registry value
[HKLM\Software\Microsoft\Fusion!EnableLog]. --- End of inner exception
stack trace --- at
System.Web.UI.TemplateParser.ProcessException(Exception ex) at
System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding
fileEncoding) at System.Web.UI.TemplateParser.ParseString(String text,
VirtualPath virtualPath, Encoding fileEncoding) --- End of inner
exception stack trace --- at
System.Web.UI.TemplateParser.ParseString(String text, VirtualPath
virtualPath, Encoding fileEncoding) at
System.Web.UI.TemplateParser.ParseFile(String physicalPath, VirtualPath
virtualPath) at System.Web.UI.TemplateParser.ParseInternal() at
System.Web.UI.TemplateParser.Parse() at
System.Web.Compilation.BaseTemplateBuildProvider.get_CodeCompilerType()
at
System.Web.Compilation.BuildProvider.GetCompilerTypeFromBuildProvider(BuildProvider
buildProvider) at
System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders()
at System.Web.Compilation.BuildProvidersCompiler.PerformBuild() at
System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath
virtualPath) at
System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath
virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean
allowBuildInPrecompile) at
System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext
context, VirtualPath virtualPath, Boolean noBuild, Boolean
allowCrossApp, Boolean allowBuildInPrecompile) at
System.Web.UI.TemplateControl.LoadControl(VirtualPath virtualPath) at
System.Web.UI.TemplateControl.LoadControl(String virtualPath) at
DotNetNuke.UI.Skins.Skin.InjectModule(Control objPane, ModuleInfo
objModule, PortalSettings PortalSettings) --- End of inner exception
stack trace ---
The only difference I can find between the modules that work and the modules that don't work is that the ones that don't work have 'Pages' (ex. ViewMyModule.ascx) that register and attempt to use another user control. Also, the error only shows up when I navigate to one of the controls that use another user control. For example if the 'view' page of the module uses another user control it throws the error, but if I navigate the url to the 'edit' control that doesn't use any other user controls, it works like a champ. When I tried to recreate the problem using a plain ASP.NET 2.0 website and no DNN and I had no errors.
Hopefully my description makes sense and someone can shed some light on a solution.
Thanks ahead of time for your help
|