新的“ Azure 移动应用”资源(取代“Azure 移动服务”)非常酷。但是,通过 Azure 门户(或在其他地方在线找到)提供的示例代码假定最大依赖关系树,包括对实体框架的依赖关系。我希望拥有最少的依赖项,但是很难识别我可以“安全”删除哪些依赖项。
显而易见的答案是删除提供我不需要的功能的依赖项 - 但问题是不清楚哪些依赖项提供了哪些功能。不过,从某种意义上说,这只是问题的三分之一。
我知道我想尝试使用推送通知、身份验证(例如 OAuth)和 Dapper 访问 Azure SQL 数据库进行存储。但...
如果我可以访问(所有?)其他功能的目录,我可能会选择重新确定我的研究的优先级,让我发现以前不知道的功能。要给出我的意思的“存储等效”示例,请考虑此Azure 存储选项信息图。一张价值千言万语的图片!惊人的!
我发现的最接近 Azure 移动应用程序“功能列表”的内容是在GitHub 存储库“自述文件”文件中的“SDK 扩展”列表中。也许这个列表几乎可以解决我遇到的下三分之一的问题。
问题的最后三分之一是……历史。微软正在快速行动,新功能迅速出现以取代旧功能。有时我会卡在阅读几篇解释如何使用功能“X”的文章(不一定由微软创建),却发现功能“X”实际上已被功能“Y”取代(doh!)。最后的观察导致了整体解决方案......
为了将这一切联系在一起,我希望有一个 (1) 按类别列出的 Azure 移动应用程序功能大纲和简要说明,就像前面提到的信息图 (2) 对相关的关键 NuGet(或 NPM)包的引用到该功能和 (3) 功能状态的指示(例如“活动”/“已取代”)。是的,以我的思维方式,允许已弃用的功能保留在“列表中”并带有“已弃用”标志(以及指向哪些技术或功能替换它的指针!)比将其从列表中删除更有帮助完全。
有没有人有一些近似于这个“大纲”概述的材料(或链接等)?这将是我找到所需功能所需的完美指南,并且依赖项最少。
供参考...
可从 Azure 帐户下载的移动应用示例代码具有以下包依赖项:
移动 API“packages.config”
<package id="AutoMapper" version="3.3.1" targetFramework="net45" />
<package id="EntityFramework" version="6.1.3" targetFramework="net45" />
<package id="Microsoft.AspNet.Cors" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Cors" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.OData" version="5.5.1" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Owin" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Authentication" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.CrossDomain" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Entity" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Home" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Notifications" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Quickstart" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.Mobile.Server.Tables" version="0.2.575" targetFramework="net45" />
<package id="Microsoft.Azure.NotificationHubs" version="1.0.2" targetFramework="net45" />
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
<package id="Microsoft.Data.Edm" version="5.6.4" targetFramework="net45" />
<package id="Microsoft.Data.OData" version="5.6.4" targetFramework="net45" />
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45" />
<package id="Microsoft.Owin" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.Owin.Security" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.WindowsAzure.ConfigurationManager" version="3.1.0" targetFramework="net45" />
<package id="Newtonsoft.Json" version="6.0.8" targetFramework="net45" />
<package id="Owin" version="1.0" targetFramework="net45" />
<package id="System.IdentityModel.Tokens.Jwt" version="4.0.2.205111437" targetFramework="net45" />
<package id="System.Spatial" version="5.6.4" targetFramework="net45" />
<package id="Microsoft.Owin.Host.SystemWeb" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Tracing" version="5.2.3" targetFramework="net45" />
Azure API 应用程序“packages.config”
将上述 packages.config 与新的预览版“ Azure API App ”资源类型进行对比,该资源类型具有以下 packages.config:
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net46" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net46" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net46" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net46" />
<package id="Microsoft.Azure.AppService.ApiApps.Service" version="0.9.16" targetFramework="net46" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net46" />
<package id="Newtonsoft.Json" version="6.0.4" targetFramework="net46" />
<package id="Swashbuckle" version="5.0.0" targetFramework="net46" />
<package id="Swashbuckle.Core" version="5.0.0" targetFramework="net46" />
<package id="System.IdentityModel.Tokens.Jwt" version="4.0.0" targetFramework="net46" />
<package id="WebActivatorEx" version="2.0.6" targetFramework="net46" />
这是令人愉快的瘦。我想使用我之前描述的“超酷概述大纲”来缩小到接近此的内容。有人有这样的吗?:}
顺便说一句,如果确实存在这样的大纲 - 它可能包含一个列,用于阐明 Azure API 应用程序中当前可用或不可用的功能。哇!