ublic
Link GetLink([FromUri] FileRequest fileRequest)
{
if
(ModelState.IsValid)
{
var
xml = WebConfigurationManager.AppSettings[
"appDiscoveryXml"
];
var
wopiServer = WebConfigurationManager.AppSettings[
"appWopiServer"
];
bool
updateEnabled =
false
;
bool
.TryParse(WebConfigurationManager.AppSettings[
"updateEnabled"
],
out
updateEnabled);
WopiAppHelper wopiHelper =
new
WopiAppHelper(HostingEnvironment.MapPath(xml), updateEnabled);
var
result = wopiHelper.GetDocumentLink(wopiServer + fileRequest.name);
var
rv =
new
Link
{
Url = result
};
return
rv;
}
throw
new
ApplicationException(
"Invalid ModelState"
);
}
|
FileRequest类的定义
1
2
3
4
5
6
7
|
public
class
FileRequest
{
public
string
name {
get
;
set
; }
public
string
SelectedItemId {
get
;
set
; }
public
IEnumerable<SelectListItem> Items {
get
;
set
; }
}
|
这里的FromUri强制从url中读取FileRequest 对象,也就是说
当访问Http://localhost:80?name=eric&SelectedItemId={Guid.NewGuid()}
此处将自动转换Uri中的参数作为对象属性忽略form传递的数据
而使用FromBody将强制从FormData中读取数据
而非URL中获取参数~