当前位置: 棋牌电玩游戏平台 > 游戏平台 > 正文

Office 365也是.NET Core应用开发新战场棋牌电玩游戏

时间:2019-11-12 14:13来源:游戏平台
最近有幸阅读了陈希章花了一年时间为国内开发者贡献的《Office 365开发入门指南》。虽然早期接触过SharePoint的开发,2007年之后就再也没有接触SharePoint的开发,这次阅读这本书让我重新

最近有幸阅读了陈希章花了一年时间为国内开发者贡献的《Office 365 开发入门指南》。 虽然早期接触过SharePoint的开发,2007年之后就再也没有接触SharePoint的开发,这次阅读这本书让我重新认识了Office的系统开发技术,让我意识到现在的Office 开发也是.NET Core 开发技术的新战场,而且更为有心的是陈希章的范例都是使用.NET Core写的,具体地址 。

原文于2017年2月26日首发于LinkedIn,请参考链接

作者:陈希章 发表于2017年7月12日

在新CEO纳德拉的带领下,秉持“云为先”和“一个微软”的方针,微软比任何时候都更加开放和谦虚,内部协作也更紧密。Office 365发展到现在,在经过各种用户看得见和看不见的变迁和进化后,已经成为一套比较成熟的云服务,而各种进步和创新还在继续。 Office 365是一个很好的开发平台,有数以亿计的用户,据不完全统计,地球上1/7的人们在使用Office,Microsoft Graph可以让你的业务系统很容易地和Office 365 集成 起来,立即利用Office 365的强大服务增强业务应用能力。而Office Add-in则是面向所有的Office 365 & Office 开发人员的盛宴,它用来扩展Office 365 & Office的能力,用中国话讲就是“插件”。

引子

棋牌电玩游戏平台 1

之前我在Office 365技术社群(O萌)中跟大家提到,3月初适逢Visual Studio 2017隆重发布以及20周年纪念,我想要发起一次与Office 365开发相关的活动,一方面也是向Visual Studio致敬;另一方面,我在加入微软之前,有相当长的一段时间都是从事与Office平台定制和应用系统开发的工作(最早是做VBA的开发,后来有做过VSTO,以及SharePoint开发),而以微软员工的身份跟很多客户以及合作伙伴打交道下来,我有一个深切的体会就是说Office 365这个平台不光是给客户带来了全新的体验、也给独立软件开发商(ISV)和广大的开发人员提供了前所未有的一些机会,但是这些潜力还没有完全地开发出来,我觉得有必要也有兴趣做一点这方面的分享,除了对我自己来说也是一个总结和思考的机会,如果还有幸对大家有所帮助,我将感到非常高兴。

我并不认为Office 365的平台就已经是完美的,事实上因为在全球有多个版本导致有些功能或接口并不完全统一,而且由于开发的技术(Web为主,结合了云的架构)与传统的Office开发有较大的差异,这些会给我们的开发人员带来一些困扰和挑战。我们在去年10月份的时候,在北京举办了第一届Office 365技术峰会暨开发马拉松大会,总部产品组来了将近20人的豪华团队,与中国的开发团队(或独立开发个人)做了深入广泛的交流,我们能看到大家的积极热情,也收到了不少实际的反馈意见。

据我所知,同类活动今年仍然将择期举办,规模和深度可能都会有提升,敬请大家关注,并且可以早做些准备。

棋牌电玩游戏平台 2

但是,如果放长远一些眼光来看,Office 365目前采用敏捷开发模式,产品组也更加开放,我相信它本身会越来越完善;与此同时,作为一个全新的平台和全新的生态,我们也希望有更多的开发人员加入,并且做出自己的贡献。

前言

从2月26日开始写这个Office 365开发概览系列文章—— ,到现在已经有17篇文章。此前的这个阶段,我将主要的精力集中在Microsoft Graph的介绍和实例演示,有很多细节的研究,尤其是针对Office 365两个版本(国际版和国内版),Azure AD的两个版本(v1.0和v2.0)都有针对性的比较。

Microsoft Graph 显然值得我花那么多时间,而且还有很多值得深入探究的地方,但是现在是时候将镜头拉回来看看Office 365开发的全貌以及其他有意思的方向了。

棋牌电玩游戏平台 3

不忘初心,方得始终。以下最新版本的目录,请大家参考,这个系列文章将完整覆盖但不仅限于上面提到的Office 365开发四大方向。

棋牌电玩游戏平台 4

棋牌电玩游戏平台 5

内容介绍

言归正传,我准备用一个系列文章和配套课程(含代码示例)的形式进行分享。这个系列将包括目前Office 365所支持的开发模式的全面介绍,并且通过案例带领观众进行实践。目前初步规划将包括如下几个内容

  • 系列文章简介
  • Office 365开发概述及生态环境介绍
    1. 上篇
    2. 下篇
  • Office 365开发环境搭建
  • Microsoft Graph
    1. Microsoft Graph 概述
    2. 通过GraphExplorer体验Microsoft Graph
    3. 通过其他第三方工具体验Microsoft Graph
    4. 注册Microsoft Graph 应用程序
      1. 注册Azure AD 应用程序
      2. 注册Azure AD 2.0 应用程序
      3. 注册中国版Microsoft Graph应用程序
      4. 掀起Azure AD的盖头来——深入理解Microsoft Graph应用程序和服务权限声明
    5. 开发Microsoft Graph 应用程序
      1. Microsoft Graph 桌面应用程序
      2. PowerShell脚本访问Microsoft Graph
      3. 支持国内版Office 365的PowerShell模块现已发布
      4. Microsoft Graph Web应用程序极致开发体验
      5. 如何通过PowerShell获取Office 365 TenantID
      6. Microsoft Graph 服务应用程序
      7. 在ASP.NET Core MVC 应用程序中集成 Microsoft Graph
  • Office Add-ins 开发
    1. Office Add-in 架构和入门
    2. 在Visual Studio 中开发Office Add-in
    3. 在Visual Studio Code中开发Office Add-in
    4. Office Add-in 设计规范与最佳实践
    5. 实战Excel Add-in的三种玩法(VBA,VSTO,Web Add-in)
    6. Office Web Add-in的技术原理和开发常见问题剖析
    7. 详解Office Add-in 清单文件
    8. 在企业和应用市场发布Office Add-in
    9. 在Office Add-in中实现单点登陆(SSO)
  • SharePoint Online 开发
    1. SharePoint 大局观
    2. SharePoint Add-in 开发
    3. SharePoint Patterns and Practices
    4. SharePoint Framework
  • 基于Office 365的业务和流程应用开发
    1. 基于Office 365的随需应变业务应用平台
    2. PowerApps 入门篇
    3. PowerApps 进阶篇
    4. Microsoft Flow 概览
    5. Common Data Service 初探
    6. 为PowerApps和Flow开发自定义连接器
    7. 观未见,行不止 —— Power BI 两周年技术和方案交流圆桌会议纪实
  • Office 365 开发与人工智能
    1. 人工智能背景下的Office 365现状和发展趋势
    2. Office 365 机器人(Bot)开发入门

Office Add-in 开发概述

Microsoft Graph可以让你的业务系统很容易地和Office 365 集成 起来,立即利用Office 365的强大服务增强业务应用能力。而Office Add-in则是面向所有的Office 365 & Office 开发人员的盛宴,它用来扩展Office 365 & Office的能力,用中国话讲就是“插件”。只要你愿意,你随时可以为自己及周围的同事定制一些有意思的功能,它们在本机的客户端(PC & Mac)和云端的在线版本(Office Online)、手机的App里面都能运行,并且得到一致性的体验。进一步地说,你还可以将这个插件发布到Office Store中去,全世界数以十亿计的Office 365 & Office用户都可以使用你的杰作。

所以,总结起来说,Office Add-in的开发有如下的特点

  1. 面向Office 365的订阅用户,也面向Office 2013或2016的本地用户。但后者可能在某些细节功能上面略有差异。
  2. Office Add-in的开发采用了全新的技术架构(Web Add-in,后续会专门介绍),其主要目的在于想要实现"一次编写,处处运行"。
  3. Office Add-in拥有一个成熟的生态环境,有庞大的用户群体(不完全统计,地球上1/7的人们在使用Office),有Office Store,也有配套的技术社区

截至现在,Office Add-in支持的运行平台和可扩展的应用如下图所示

棋牌电玩游戏平台 6

这个范围可能会随着时间推移发生变化,请关注

本书的内容不仅基本完整覆盖了Office 365开发的四大方向(Microsoft Graph,Office Add-in, SharePoint Add-in,Office 365 Connector),而且还包括了其他一些有意义的话题,例如有针对人工智能的话题,有商业应用平台的话题(Power Apps,Microsoft Flow,Power BI等)。

重要说明

  • 需要特别声明一下,我将主要利用业余的时间来分享这个系列,所以更新的周期可能不是很有规律,但我想争取在6月底之前完整所有这个系列(包括文章和视频),如果有合适的朋友愿意参与这个系列,我非常欢迎,请私下跟我联系讨论。
  • 本系列文章和课程将主要以国际版Office 365 企业版E3 作为演示和开发环境,采用的开发工具是Visual Studio 2017 Enterprise。(如果有兴趣跟随一起做练习,请预先准备好相关环境,都可以申请试用版)。
  • 本系列文章将在LinkedIn和博客园、Github 三个平台同步连载,欢迎大家根据自己的喜好进行关注,并且进行交流。
  • 本文将同时在 微软中国Office 365官方微信号 连载,欢迎关注“ mschinaoffice365",每周都会收到各种新功能介绍和实用技巧。
  • 本文将同时在 Excel之家ExcelHome 连载,欢迎关注“iexcelhome",ExcelHome是华语地区最大的Office中文技术社区,拥有超过300万注册会员。
  • 本系列文章和课程所涉及到的案例代码,将全部在Github上面共享,欢迎大家参与。

Web Add-in 技术架构

毫无疑问,Office 的扩展开发拥有悠久的历史,也拥有包括我在内的很多忠实的粉丝。关于这段历史及其演化,我有两篇专门的文章介绍,有兴趣请参考

  1. Office 365开发概述及生态环境介绍(一)
  2. Office 365开发概述及生态环境介绍(二)

相比较之前的VBA(Visual Basic for Application)和VSTO(Visual Studio Tools for Office)开发,我们将这一代的Office Add-in开发技术称为“Web Add-in”,顾名思义,就是使用最普遍的Web技术来进行Office Add-in的开发。

实事求是地说,这一方面降低了技术的门槛,因为如果你已经有Web的开发经验,你将很容易地上手,无需特别学习。反过来说,这也增加了技术的门槛,对于一些早期的Office 插件开发者来说,这是一个不太熟悉的领域,要学的新东西不少,可能会增加大家的转换成本。无论如何,Web Add-in是一个有益的补充(使用它并不意味着要抛弃此前的VBA和VSTO),也是跨平台尤其是移动化的需要。

从技术的角度来看,Web Add-in确实跟早期有较大差异。下图可以看出来,Web Add-in是由两个部分组成的,首先是用来声明Add-in的manifest文件,这是一个标准的XML文件,其次是一个标准的Web应用程序。所有的功能都是在Web应用程序中实现的,对于具体用什么技术来实现没有要求,其核心是会调用到Office.js这个脚本文件完成与Office 应用程序的交互。采用这种结构,则有利于开发和部署的分离。通常来说,我们开发好的Web应用可以部署到任意地方,而给到Office 管理员或者用户的,只是那个manifest文件即可。

Office.js 是对Office应用程序对象模型的封装。它还在不断地完善,但与VBA和VSTO拥有的完整COM对象模型还是会略有差异。有兴趣请关注

棋牌电玩游戏平台 7

所以,如果要谈Web Add-in的技术架构,你需要了解几个方面

  1. 掌握一门Web应用开发技术(不管是微软的ASP.NET,或者ASP.NET Core,还是PHP,NodeJS,Python等,都是可以的)
  2. 掌握Web应用程序的托管技术(你可以部署在自己的托管服务器上面,也可以部署在微软的Azure App Service里面)
  3. 了解如何将manifest文件分发给用户(你可以将文件给用户,也可以集中在Office 365中部署,也可以发布到Office Store)

值得注意的是,Web Add-in对于运行的环境也有一定的要求,请参考 ,我这里特别指出是浏览器兼容性。

  1. 如果是在Windows上运行,那么必须至少安装IE 11,哪怕不是将其设置为默认浏览器。
  2. 不管是在Windows 还是 MacOS上面,只接受五种浏览器设置为默认浏览器:IE 11(或更高版本),最新版本的Microsoft Edge, Chrome, Firefox, Safari。

编辑:游戏平台 本文来源:Office 365也是.NET Core应用开发新战场棋牌电玩游戏

关键词: .NET技术 .NET Core ASP.NET Core do