如何:部署 LightSwitch OData 服务
通过将 LightSwitch 应用程序作为服务发布,你可以将其用作中间层来向其他应用程序提供数据。 你可以在 Microsoft Azure 或 Internet Information Services (IIS) 上托管服务。 有关如何将服务部署到 Azure 的详细信息,请参阅如何:在 Microsoft Azure 上托管 LightSwitch 应用程序。
你可以使用**“LightSwitch 发布应用程序向导”**通过发布或打包服务来部署服务。
如果你发布服务,则客户端计算机可在你完成向导后立即访问该服务。 安装过程会自动将数据库架构部署到 SQL Server。 若要发布服务,你必须具有对 Web 服务器和数据库服务器的管理访问权,并且你必须针对 LightSwitch 配置 Web 服务器。 请参阅如何:配置服务器以托管 LightSwitch 应用程序。
如果你打包应用程序,则必须将运行服务所需的一切压缩 (zip) 到一个文件夹中。 服务器管理员还必须安装该服务并使其可用。 请参阅如何:在服务器上安装 LightSwitch 应用程序。
发布服务
在**“解决方案资源管理器”**中,选择 ProjectName 节点,其中 ProjectName 是项目的名称。
在菜单栏上,选择**“构建”、“发布”**ApplicationName。
**“LightSwitch 发布应用程序向导”**随即出现。
在**“应用程序类型”页上,选择“仅限 Web 服务”选项按钮,然后选择“下一步”**按钮。
在**“应用程序服务器配置”页上,选择“IIS 服务器”**选项按钮。
备注
如果你已为另一个服务创建发布设置文件(.publishsettings 或 .pubxml),则可以使用该文件提供部署所需的其他信息。选择“导入设置”按钮以指定发布设置文件。
单击**“下一步”按钮,然后在“发布输出”**页上,选择 **“立即远程发布到服务器”**选项按钮。
**“详细信息”**部分随即出现。
在**“服务 URL”**文本框中,输入运行 IIS 的服务器的统一资源定位器 (URL)。
在**“站点/应用程序”**文本框中,输入用于承载应用程序清单的网页的路径。
此路径通常是 Default Web Site/ServiceName,其中 ServiceName 是应用程序的名称。
在**“用户名”和“密码”文本框中,输入你的 IIS 凭据,然后选择“下一步”**按钮。
如果**“安全设置”页的“应用程序管理员”选项卡出现,则为将成为初始应用程序管理员的用户输入有效的“用户名”、“全名”和“密码”,然后选择“HTTPS”**选项卡。
备注
在发布更新时,应用程序管理员已存在。选中“否,已存在应用程序管理员”复选框可跳过此步骤。
在**“安全设置”页的“HTTPS”选项卡上,选择“是”以要求安全 HTTPS 连接;如果你的应用程序不需要安全连接,则选择“否”**。
选择**“下一步”按钮以打开向导的“数据连接”**页。
在**“数据库连接”选项卡上,输入要在其中发布应用程序数据库的数据库服务器的管理员和用户连接字符串,然后选择“附加数据源”**选项卡。
备注
发布更新时,除非你已更改架构,否则无需重新发布数据库。若要阻止重新发布数据库,请清除“发布数据库架构”复选框。
数据库服务器必须运行 SQL Server 的兼容版本,例如,SQL Express Server 2005 或 SQL Server 2005 Express。 你不需要将应用程序发布到数据库服务器。
备注
用户连接字符串无法使用集成安全性;你必须为连接指定有效的用户名和密码。
在**“附加数据源”选项卡上,根据需要更新任何额外连接的连接字符串,再选择“下一步”按钮,然后选择“发布”**按钮。
当发布服务时,其他应用程序可从由**“站点/应用程序”**名称与 ServiceName.svc 指定的网站来访问它,其中 ServiceName 是服务公开的数据源的名称。
对服务打包
在**“解决方案资源管理器”**中,选择 ProjectName 节点,其中 ProjectName 是项目的名称。
在菜单栏上,选择**“构建”、“发布”**ApplicationName。
**“LightSwitch 发布应用程序向导”**随即出现。
在**“应用程序类型”页上,选择“仅限 Web 服务”选项按钮,然后选择“下一步”**按钮。
在**“应用程序服务器配置”页上,选择“IIS 服务器”**选项按钮。
备注
如果你已为另一个应用程序创建发布设置文件(.publishsettings 或 .pubxml),则可以使用该文件提供部署所需的其他信息。选择“导入设置”按钮以指定发布设置文件。
选择**“下一步”按钮,然后在“发布输出”页上,选择“在磁盘上创建包”**选项按钮。
在**“此网站应如何命名?”**文本框中,输入将承载服务的网站的名称。
默认情况下,网站名称是应用程序名称。
在**“应将此包创建在何处?”**文本框中,输入要将输出发布到的位置的 UNC 路径。
默认情况下,将输出发布到项目目录下的**“发布”**子目录中。
如果“安全设置”页的**“应用程序管理员”选项卡出现, 为将成为初始应用程序管理员的用户输入有效的“用户名”、“全名”和“密码”,然后选择“HTTPS”**选项卡。
备注
在发布更新时,应用程序管理员已存在。选中“否,已存在应用程序管理员”复选框可跳过此步骤。
在**“安全设置”页的“HTTPS”选项卡上,选择“是”以要求安全 HTTPS 连接;如果你的应用程序不需要安全连接,则选择“否”**。
选择**“下一步”按钮,然后在向导的“数据连接”页的“数据库连接”选项卡上,选择“生成 SQL 数据库脚本”**选项按钮,然后输入数据库的名称。
你必须指定在**“应用程序设计器”**中为 Application Name 属性输入的相同名称。
备注
如果服务器上已存在数据库,请选择“生成一个新数据库,名为”选项按钮,然后输入该数据库的连接字符串。如果你不具有对服务器的访问权限,则可以为具有与服务器上的数据库相同的架构的另一个数据库输入连接字符串。
备注
发布更新时,除非你已更改架构,否则无需重新发布数据库。若要阻止重新发布数据库,请清除“生成 SQL 数据库脚本”复选框。
在**“附加数据源”选项卡上,根据需要更新任何额外连接的连接字符串,再选择“下一步”按钮,然后选择“发布”**按钮。
在发布服务时,包含程序包的 .zip 文件将位于你为发布输出指定的目录中。 创建此程序包后,服务器管理员可以使用 MSDeploy 工具将服务部署到运行 IIS 和 SQL Server 的服务器。 请参阅如何:在服务器上安装 LightSwitch 应用程序。
当部署服务时,其他应用程序可从由**“站点/应用程序”**名称与 ServiceName.svc 指定的网站来访问它,其中 ServiceName 是服务公开的数据源的名称。
备注
如果已启用应用程序的身份验证,则应用程序管理员必须先向用户授权,然后用户才能运行该应用程序。有关详细信息,请参阅如何:在 Silverlight 客户端应用程序中启用身份验证。