Outlook 在Office加载项清单中为~remoteAppUrl指定值
我正在使用为Outlook编写外接程序。项目模板中的清单使用Outlook 在Office加载项清单中为~remoteAppUrl指定值,outlook,ms-office,outlook-web-addins,Outlook,Ms Office,Outlook Web Addins,我正在使用为Outlook编写外接程序。项目模板中的清单使用~remoteAppUrl表示web文件的位置。它在开发过程中工作得很好,但是要发布到Office应用商店,我需要那里的产品URL。如果我将生产URL保存到清单中,则在调试期间会使用生产服务器,因此不会显示本地更改 文档提到Visual Studio在调试期间填写此值: 接下来,Visual Studio将执行以下操作: 1.通过将~remoteAppUrl标记替换为起始页的完全限定地址(例如,)来修改XML清单文件的SourceLoc
~remoteAppUrl
表示web文件的位置。它在开发过程中工作得很好,但是要发布到Office应用商店,我需要那里的产品URL。如果我将生产URL保存到清单中,则在调试期间会使用生产服务器,因此不会显示本地更改
文档提到Visual Studio在调试期间填写此值:
接下来,Visual Studio将执行以下操作:1.通过将~remoteAppUrl标记替换为起始页的完全限定地址(例如,)来修改XML清单文件的SourceLocation元素 是否有一种内置方法可以让Visual Studio在适当的时间(提交Office Store之前/期间)填写生产URL,而不中断调试?编辑: Visual Studio不会填写生产URL,但是您可以复制当前清单并手动将
~remoteAppUrl
替换为相应的主机,从而为您提供外接程序的生产和调试版本
为后人原创
~remoteAppUrl
是文件所在位置的占位符。例如,如果您已将外接程序上载到Azure Web应用程序,则您的远程应用程序url将是类似于myWebApp.azurewebsites.net的是的,有一种内置方法可以让Visual Studio将~remoteAppUrl
符号引用标记替换为您选择的目标url
从Visual Studio访问外接程序的“发布…”选项
项目,然后单击“打包外接程序”按钮
然后可以在弹出的模式对话框中输入URL
然后触发一个生成,该生成将在生成的清单XML文件中插入URL
Windows资源管理器窗口将方便地打开以显示
生成的文件
以下方法不是内置的,但也可能有用
如果希望在自动生成中实现此功能,则需要为生成参数IsPackaging
(True
)和RemoteAppUrl
指定值
如果希望在标准Visual Studio生成中使用此功能,鉴于Visual Studio没有提供一种简单的方法来指定生成参数(请参见),则需要编辑项目文件以设置相同生成参数的值。
例如:
...
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
...
<IsPackaging>True</IsPackaging>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
...
<RemoteAppUrl>https://localhost:44300</RemoteAppUrl>
</PropertyGroup>
...
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
...
<RemoteAppUrl>https://your.own.url</RemoteAppUrl>
</PropertyGroup>
...
。。。
调试
...
真的
...
https://localhost:44300
...
...
https://your.own.url
...
我想说明值的来源,以替换~remoteAppUrl
参数。外接程序.csproj
文件包含对WebApp项目的引用:
<ItemGroup>
<ProjectReference Include="..\OutlookWebAddIn1Web\OutlookWebAddIn1Web.csproj">
<Project>{57AC33A8-A364-4084-B41F-319C5DBB9FB4}</Project>
<Name>OutlookWebAddIn1Web</Name>
<Private>True</Private>
<RoleType>Web</RoleType>
<OutputItemType>SharePointWebProjectOutput</OutputItemType>
<RoleName>OutlookWebAddIn1Web</RoleName>
<ReferenceOutputAssembly>False</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
{57AC33A8-A364-4084-B41F-319C5DB9FB4}
OutlookWebAddIn1Web
真的
网状物
SharePointWebProjectOutput
OutlookWebAddIn1Web
假的
我认为它从WebApp.csproj
文件中获取URL:
我想我的问题有误导性。我对它进行了编辑以使它更清晰。如果你有答案,请告诉我。没有Visual Studio,可以实现类似的功能吗?@IanVS事实上,部分问题是打包在Visual Studio的“外部”工作,但不是在Visual Studio中工作。因此,在非基于Visual Studio的生成过程中,“[…]需要为生成参数IsPackaging(True)和RemoteAppUrl指定值。”@DeChrist不处理这些事情:http://localhost:3000/
@5ervant在没有更多上下文的情况下很难添加有用的回复。我建议你提出一个新的问题,充分描述你所看到的背景和实际错误。