在对我的RIA域服务进行一些细微更改(尝试在Silverlight网站应用程序中托管)后尝试构建我的VS 2010 Silverlight项目时,此错误已经开始。似乎没有理由出现此错误,我无法理解错误的访问被拒绝部分。
我尝试过的事情:
1)彻底清除解决方案中的所有项目并重新构建 2)从framework文件夹中删除所有临时ASP.Net文件 3)从类库中删除项目属性中的链接RIA服务,该类库失败,清理,重新构建,然后重新添加链接的RIA服务
任何关于从何处出发的建议都将非常感激:
错误21“CreateRiaClientFilesTask”任务意外失败。 System.Web.HttpException(0x80004005):无法加载文件或程序集“Business,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。访问被拒绝。 ---> System.Configuration.ConfigurationErrorsException:无法加载文件或程序集“Business,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。访问被拒绝。 ---> System.IO.FileLoadException:无法加载文件或程序集“Business,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。访问被拒绝。 ---> System.IO.FileLoadException:无法加载文件或程序集“Business”或其依赖项之一。访问被拒绝。
---内部异常堆栈跟踪结束--- 在System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName,String codeBase,Evidence assemblySecurity,RuntimeAssembly locationHint,StackCrawlMark& stackMark,Boolean throwOnFileNotFound,Boolean forIntrospection,Boolean suppressSecurityChecks) 在System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName,String codeBase,Evidence assemblySecurity,RuntimeAssembly locationHint,StackCrawlMark& stackMark,Boolean throwOnFileNotFound,Boolean forIntrospection,Boolean suppressSecurityChecks) 在System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef,Evidence assemblySecurity,StackCrawlMark& stackMark,Boolean forIntrospection,Boolean suppressSecurityChecks) 在System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString,Evidence assemblySecurity,StackCrawlMark& stackMark,Boolean forIntrospection) 在System.Reflection.Assembly.Load(String assemblyString) 在System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName,Boolean starDirective) ---内部异常堆栈跟踪结束--- 在System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName,Boolean starDirective) 在System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() 在System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) 在System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) 在System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() 在System.Web.Compilation.BuildManager.CallPreStartInitMethods() 在System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager,IApplicationHost appHost,IConfigMapPathFactory configMapPathFactory,HostingEnvironmentParameters hostingParameters,PolicyLevel policyLevel,Exception appDomainCreationException) 在System.Web.Compilation.ClientBuildManager.EnsureHostCreated() 在System.Web.Compilation.ClientBuildManager.CreateObject(Type type,Boolean failIfExists) 在Microsoft.ServiceModel.DomainServices.Tools.CreateRiaClientFilesTask.CreateSharedTypeService(ClientBuildManager clientBuildManager,IEnumerable`1 serverAssemblies,ILogger logger) 在Microsoft.ServiceModel.DomainServices.Tools.CreateRiaClientFilesTask.GenerateClientProxies() 在Microsoft.ServiceModel.DomainServices.Tools.CreateRiaClientFilesTask.ExecuteInternal() 在Microsoft.ServiceModel.DomainServices.Tools.RiaClientFilesTask.Execute() 在Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost,TaskLoggingContext taskLoggingContext,TaskHost taskHost,ItemBucket bucket,TaskExecutionMode howToExecuteTask,Boolean& taskResult)Insurer.Analytics.Common
答案 0 :(得分:12)
刚出现同样的问题 - 事实证明某些内容更改了“Temporary ASP.NET Files”文件夹的权限。它很容易测试。单击解决方案资源管理器中的ASP.Net配置以获取.web项目。它可能会抛出拒绝访问错误并指向temp asp.net files文件夹。如果是这样,请打开.web项目中的web.config并将tempDirectory指令添加到编译中,如下所示:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" tempDirectory="C:\<SomeDirectoryYouFullyControl>\Temporary ASP.Net Files" />
</system.web>
重建您的.web项目并在您的silverlight项目中更新您的服务参考。
答案 1 :(得分:2)
在我的情况下,Debug build正在运行,但Release却没有。
实际问题是,对于突出显示的问题项目,它在混合平台平台中有x64
而不是Any CPU
我在这上花了2.5个小时,所以希望对某人有帮助
答案 2 :(得分:1)
我有类似的问题。我的网络应用程序与OutputPath有问题。我通过转到项目属性 - &gt;修复了它。构建 - &gt; OutputPath并从&#34; bin \ Debug \&#34;更改项目的OutputPath。回到默认&#34; bin \&#34;。
答案 3 :(得分:0)
打开你的bin文件夹并删除里面的任何东西。重建你的项目 - 这对我有用。我的构建配置都设置为Debug,任何CPU。
答案 4 :(得分:0)
我遇到了这个错误,尝试了许多解决方案并且似乎没有修复,直到我手动擦除本地映射文件夹中的所有文件并再次下载它们,重新启动计算机并最终编译完成!