Visual Studio和Visual Studio for Mac中的跨平台Xamarin Forms项目。该项目引用了Akavache。 Akavache的依赖关系为akavache.sqlite3。我已经对akavache.sqlite3 repo中的DLL进行了自定义更改并在本地构建了DLL,并且不希望将整个Akavache包树切换到所有Akavache dll和依赖项的自定义构建。所以基本上...想继续像正常那样继续引用NuGet包,但是"替换"一个DLL即时。或类似的东西!
但它也需要便携式。起初我使用post build copy命令来覆盖"标准"放入TargetDir的dll。这是因为它复制到TargetDir,但是对于Android将DLL复制到TargetDir没有任何好处。该DLL已经包含在TargetDir中的APK中。所以它需要以其他方式发生。如果使用MSBuild而不是post build命令行,则会出现相同的基本问题。
有什么想法吗?
FWIW,我目前的解决方法是将DLL复制到缓存的NuGet包位置之上。但是这种方法的问题是任何时候缓存都会被清除/更新,需要重新应用它。当另一位开发人员想要在他们的机器上安装时,这也不是一个明显的步骤,或者很容易实现自动化。
答案 0 :(得分:0)
任何.nupkg
个文件都只是包含一些元数据的ZIP文件,因此您可以更改内容。 NuGet Package Explorer应该可以更容易地查看内容。
NuGet Gallery(例如https://www.nuget.org/)左侧有一个“下载”链接,否则只需将软件包安装到一个空项目中然后看一眼。