c# – 检查是否可以在调用api之前调用api中的方法
发布时间:2020-12-15 20:56:15 所属栏目:百科 来源:网络整理
导读:我有以下代码: var view = ApplicationView.GetForCurrentView();var runtimeMethods = view.GetType().GetRuntimeMethods();if (!view.IsFullScreen){ var tryEnterFullScreenMode = runtimeMethods.FirstOrDefault( x = x.Name == "TryEnterFullScreenMod
我有以下代码:
var view = ApplicationView.GetForCurrentView(); var runtimeMethods = view.GetType().GetRuntimeMethods(); if (!view.IsFullScreen) { var tryEnterFullScreenMode = runtimeMethods.FirstOrDefault( x => x.Name == "TryEnterFullScreenMode"); tryEnterFullScreenMode?.Invoke(view,null); } 这样做是因为我的应用程序变成全屏,但是如果我在Windows 8.1上我不能调用这些方法.在调用方法之前,如何首先检查此功能是否可用.我会使用#if …#endif吗? 解决方法
桌面开发不会受到Web开发所经历的碎片的影响,因此没有功能支持查询,而是库支持/ os版本.至少我也不知道.
通常做的是 1)根据您运行的OS系列版本动态加载程序集.为此,您需要一些通用的界面包装器,它可以在内部隐藏所有“真正的”API调用. 2)为每个不同的OS系列提供不同的版本.您需要支持2个代码库.但事件中,实际上不同的代码可能会移动到单独的程序集中,因此您只有一小组程序集,这些程序集在不同的OS系列之间是不同的.适合修补,因为只需要将相对少量的数据移动到客户端.这里还需要常见的界面. 因此,你必须找到答案的基本问题是:不是如何处理多样性,而是一旦你发现你需要做一些与预期不同的事情,你应该做些什么.从那里你可以理解你将要处理的最可靠的方式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |