最近研究infopath,期間對調試費了一番功夫,但仍不得其法,
/preview "Path/manifest.xsf" /sampledata "Path/template.xml" /viewname "View 1" /inputparameters "Parameter" ,尤其是這一長串,具體如何使用,還希望高人指點,雖然我沒有利用到他,但確也勉強調試成功 VSTO Debugging
若要解決 VSTA 項目中的此問題,請按照下列步驟操作:
- 建立一個新的基於 InfoPath 表單範本的 XML 檔案。InfoPath 表單範本是一個 .xsn 檔案。
- 將 XML 檔案另存新檔 Test.xml。
- 單擊“開始”,單擊“運行”,在“開啟”框鍵入 InfoPath "Path/Test.xml" /inputparameters "Parameter",然後單擊“確定”。
參照msdn:
操作方法:預覽和調試 InfoPath Managed 程式碼表單範本
操作方法:預覽和調試 InfoPath Managed 程式碼表單範本
使用帶有 Microsoft Visual Studio Tools for Applications (VSTA) 的 Microsoft Office InfoPath 2007、帶有 Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System 的 Visual Studio 2005 和 帶 Visual Studio Tools for Office 的 Visual Studio 2008,可以通過在預覽模式下運行表單代碼來進行調試。在您開始調試表單代碼時,系統將對項目進行編譯並且 InfoPath 在 InfoPath 預覽視窗中顯示表單。當遇到設定了斷點的一行代碼時,焦點將移動到代碼編輯器。當越過斷點繼續進行編譯時間,焦點將移回預覽視窗。關閉預覽視窗時調試也將停止。
還可以修改表單範本的表單選項,以便使用特定的使用者角色或樣本資料檔案或者通過指定表單將發布到的域來進行預覽和調試。
在代碼中設定斷點並編譯您的表單範本後,可以在編輯模式下開啟它,然後串連到 Visual Studio 中的 InfoPath 進程並在運行時調試您的表單範本。
| 注意: |
不能在運行時從 VSTA 調試表單範本。這適用於只與 InfoPath 相容的表單範本以及與 InfoPath 和 InfoPath Forms Services 相容的表單範本。 |
有關調試從 Visual Studio 部署到 InfoPath Forms Services 的表單範本商務邏輯的資訊,請參閱操作方法:調試部署在 InfoPath Form Services 上的啟用瀏覽器功能的表單。
在預覽模式下調試在預覽模式下調試 InfoPath 項目
在 VSTA 或 Visual Studio 中建立或開啟 InfoPath Managed 程式碼表單範本。
在代碼編輯器中,通過單擊要插入斷點的程式碼左側的灰條在表單代碼中設定一個或多個斷點。
將顯示一個紅色圓圈,並且該程式碼反白,指示運行時將在表單代碼中的此斷點處暫停。
在“調試”菜單上單擊“啟動調試”;或按 F5。
將對項目進行編譯,並在預覽視窗中顯示表單。
與表單進行互動,直到遇到包含斷點的一行代碼。
焦點將返回到代碼編輯器。
在“調試”菜單上,單擊“繼續”;或按 F5。
完成調試後,關閉預覽視窗;或者在“調試”菜單上單擊“停止調試”。
| 注意: |
要在使用需要完全信任物件模型成員時調試 InfoPath Managed 程式碼表單範本,您必須按照操作方法:預覽和調試需要完全信任Managed 程式碼表單範本中的說明配置您的表單範本。 |
使用樣本資料檔案
預設情況下,調試和預覽使用在建立表單範本時建立的 template.xml 檔案。您可以建立自己的資料檔案,並按照以下過程之一指定在預覽或調試過程中使用該檔案。
指定在 VSTA 中調試或預覽時使用的樣本資料檔案
要查看 template.xml,請在 InfoPath 設計模式下開啟表單範本。
在[檔案] 功能表上單擊“另存新檔源檔案”,將表單範本檔案儲存到一個檔案夾中,然後在文字編輯器中開啟該 template.xml 檔案。
利用要使用的樣本資料建立並儲存與 template.xml 具有相同結構的檔案。
在[檔案] 功能表上,單擊“預覽”,然後單擊“預覽設定”。
在“樣本資料”下,指定您的樣本資料檔案
指定在 Visual Studio 中調試或預覽時使用的樣本資料檔案
要查看 template.xml,請在 Visual Studio 中開啟表單範本項目。
關閉“manfest.xsf [設計]”選項卡。
在“方案總管”工具列中,單擊“顯示所有檔案”,按右鍵 template.xml,然後單擊“開啟”。
選擇並複製 template.xml 檔案的內容。
在[檔案] 功能表上,指向“建立”,單擊“檔案”,然後建立“XML 檔案”。
將 template.xml 的內容粘貼到新檔案中,並將樣本資料添加到該檔案中。
在[檔案] 功能表上,單擊“XMLFile1.xml 另存新檔”,然後將該檔案儲存到項目的“InfoPath 表單範本”檔案夾。
開啟 manifest.xsf,單擊“工具”菜單上的“表單選項”,單擊“預覽”,然後指定樣本資料檔案。
指定調試或預覽過程中使用的使用者角色
如果正在使用的表單已定義了使用者角色,則可以指定在調試或預覽表單時使用的使用者角色。有關如何定義使用者角色的資訊,請在 InfoPath 協助中搜尋“使用者角色”。
指定在調試或預覽過程中使用的角色
如果您使用的是帶有 VSTA 的 InfoPath,請切換到 InfoPath。
如果您使用的是 Visual Studio,請單擊“manfest.xsf [設計]”選項卡。
在“工具”菜單上單擊“表單選項”。
單擊“預覽”,然後在“以以下角色預覽”下拉框中指定要使用的使用者角色。
指定在調試或預覽過程中使用的域
可以預覽表單,就像該表單發行到某個特定域一樣。僅當表單範本的安全層級顯式設定為“域”時,此設定才適用。
指定在調試或預覽過程中使用的角色
如果您使用的是帶有 VSTA 的 InfoPath,請切換到 InfoPath。
如果您使用的是 Visual Studio,請單擊“manfest.xsf [設計]”選項卡。
在“工具”菜單上單擊“表單選項”。
單擊“預覽”,然後在“域”框中指定在調試和預覽過程中要使用的域。
單擊“安全和信任”,清除“自動確定安全層級”複選框,然後單擊“域”。
在運行時調試
如果您是在 Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System 或 帶 Visual Studio Tools for Office 的 Visual Studio 2008 中開發 InfoPath 表單範本,那麼可以按照以下過程在運行時調試表單範本。
在運行時調試 InfoPath 項目
在 Visual Studio 中開啟表單範本項目,在代碼中設定一個或多個斷點,然後按照操作方法:部署 InfoPath 項目中的說明來編譯和部署表單範本。
在 InfoPath 中,在編輯模式下開啟表單範本。
在 Visual Studio 中,單擊“工具”菜單上的“串連到進程”。
在“可用進程”列表中,選擇 INFOPATH.EXE,然後單擊“串連”。
在 InfoPath 中處理表單直到遇到斷點,然後使用 Visual Studio 中的調試工具。
the following is my experience:may be helpful.
first you must publish your form to specific location.then open it,finally,start debug .if default infopath.exe is setting ,then infopath is started,then choose the infopath what you have published,click the "button named call",maybe ,you will be ok for debugging,that's what I hava acquired throughout the programming process.
in addition the form must be signed and fulltrust,otherwise ,it won't be opened .
EndpointAddress address = new EndpointAddress(http://localhost:8080/wcf/RainyLinCalculatorService.svc);
WSHttpBinding binding = new WSHttpBinding();
using (ChannelFactory<IService1> chanelFactory = new ChannelFactory<IService1>(binding, address))
{
IService1 proxy = chanelFactory.CreateChannel();
using (proxy as IDisposable)
{
string result = proxy.GetData(32);
XPathNavigator xpn = this.MainDataSource.CreateNavigator();
xpn.SelectSingleNode(
"/my:myFields/my:comments", this.NamespaceManager).SetValue(result);
infpath調用WCF的demo總算是做成功了.
參照blog:http://blog.joycode.com/choral/archive/2008/04/01/115038.aspx
上一篇:Windows 使用者帳戶控制循序
下一篇:WCF Service Configuration Editor