我正在Visual Studio 2017中开发一个UWP应用。我想读取.mdb并访问数据库文件以进行分析。我在同一解决方案中创建了两个项目。一个使用UWP,另一个使用C#.Net。我想使用参考项目方法共享C#.Net,我应该能够调用一个程序来读取数据库。
我是整体概念的新手。有人可以分享这个例子,以获取从OLEDB代码到UWP应用程序的输入吗?我无法使其正常工作。
我正在引用以下文章。 https://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-migrate
答案 0 :(得分:0)
老实说,我不得不承认我在今天之前还没有意识到这种能力,但是我会尽力描述它。
首先,我们需要在这里区分三件事:
.NET Core和.NET Framework都是该标准的实现-除此之外,还有很多。 WinForms从未成为标准的一部分。这是.NET Framework超越的领域。威奇还解释了为什么.NET Core可以如此轻松地将其删除。现在,显然除了针对.NET项目,.NET Core,.NET Framework或Mono之外,您显然还可以针对.NET Standard。
这意味着它可以在.NET Core和.NET Framework应用程序中使用,但您只能得到完全 .NET标准中定义的内容-没有其他内容。并且您还必须在项目属性中手动更改它,没有(很多?)默认模板。
WPF应用程序必须针对.NET Framework。当您以.NET Core为目标时,UWP仅比WPF +一些与应用程序相关的东西多。因此,他们俩都必须针对特定的目标框架。
不幸的是,OLEDB类从来都不是.NET Standard的一部分。如果您查看"Applies to" section,它仅适用于.NET Framework和Xamarian的一个版本。
如果您查看与SQL相关的类,it applies both to Core and Framework - but not the Standard。因此,您可以在以Core或Framework为目标的Project中使用它们,但不能在Standart中使用它们。看来与数据库相关的类还不够通用,不足以使其成为标准。
请记住,abstract baseclasses都在Standard 2.0中。只是它们的具体实现是次要的细节。因此,如果您真的喜欢的话,可以根据这些抽象类和接口编写自己的数据库访问类。