我对Xamarin Studio有一些依赖性问题。我对FreshEssentials有依赖性,并且在运行时,当尝试使用该包中的组件时,我收到此错误:“无法加载文件或程序集'FreshEssentials'或其依赖项之一”。我一直在使用FreshEssentials并且效果很好。这个错误突然来了,我不知道为什么。
我做了以下事情:
Build->Clean All.
Build->Rebuild All.
Project->Update NuGet Packages(gives me the error 'Could not update packages.').
Project->Restore NuGet Packages.
Project->Add NuGet Packages, added FreshEssentials again.
Restarted the IDE.
这些程序没有帮助。很抱歉将我的操作格式化为代码,如果不这样做,我也不会让我发布。
当我在iOS模拟器上运行我的应用程序时,会出现问题。
我希望这里的某个人有类似的问题,可能会有一些建议。
编辑:
我刚注意到我的测试不会执行,给我这个StackTrace。我猜它也与依赖有关。这是在删除了Xamarin Studio中的所有软件包并再次使用NuGet->添加NuGet软件包添加它们之后。
One or more errors occurred.
Stack trace:
at System.Threading.Tasks.Task.ThrowIfExceptional (Boolean includeTaskCanceledExceptions) [0x00014] in /private/tmp/source-mono-4.4.0-c7sr1/bockbuild-mono-4.4.0-branch-c7sr1/profiles/mono-mac-xamarin/build-root/mono-x86/external/referencesource/mscorlib/system/threading/Tasks/Task.cs:2157
at System.Threading.Tasks.Task`1[TResult].GetResultCore (Boolean waitCompletionNotification) [0x00034] in /private/tmp/source-mono-4.4.0-c7sr1/bockbuild-mono-4.4.0-branch-c7sr1/profiles/mono-mac-xamarin/build-root/mono-x86/external/referencesource/mscorlib/system/threading/Tasks/Future.cs:562
at System.Threading.Tasks.Task`1[TResult].get_Result () [0x00000] in /private/tmp/source-mono-4.4.0-c7sr1/bockbuild-mono-4.4.0-branch-c7sr1/profiles/mono-mac-xamarin/build-root/mono-x86/external/referencesource/mscorlib/system/threading/Tasks/Future.cs:532
at MonoDevelop.UnitTesting.NUnit.NUnitAssemblyTestSuite.RunUnitTest (MonoDevelop.UnitTesting.UnitTest test, System.String suiteName, System.String pathName, System.String testName, MonoDevelop.UnitTesting.TestContext testContext) [0x0014a] in /Users/builder/data/lanes/3541/a6f7a24a/source/monodevelop/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs:424
答案 0 :(得分:3)
我遇到了一个类似的问题,只有iOS项目会给我带来同样的异常。
看起来iOS链接器不包含程序集,除非在iOS项目中有明确的引用。
在iOS项目main.cs中尝试将以下内容添加到Main函数中:
var dummyObject = new FreshEssentials.ListViewItemTappedAttached();
这为我带来了以下功能:
static void Main(string[] args)
{
var dummyObject = new FreshEssentials.ListViewItemTappedAttached();
// if you want to use a different Application Delegate class from "AppDelegate"
// you can specify it here.
UIApplication.Main(args, null, "AppDelegate");
}
希望这有帮助!