最近在研究Dynamics AX与AspDotNetStorefront的集成问题。AspDotNetStorefront提供一种领域事件模型,允许开发人员对事件进行定制或捕获,进而执行一些客户化操作。它所支持的EventHandler是一系列的ASP.NET页面,也就是CalloutURL中需要指定一个ASP.NET页面作为Event Handler。
在第一次开发的时候,我一直得到“URL authorization failed for the request.”的错误,这个错误信息可以在Windows的事件查看器中找到。几经波折,最后发现,原来是在我的callout page的aspx代码中,少加了一个ValidateRequest选项:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CalloutTest.aspx.cs" Inherits="CalloutTest" ValidateRequest="false" %>