運行
Process console = Process.Start("Client.exe", "-filename:" + fname + " -list:" + myList)
將執行myList.ToString()和將轉化爲:
Client.exe -filename:testDoc -list:System.Collections.Generic.List`1[System.String]
這是不是你想要達到的目標。嘗試
Process console = Process.Start("Client.exe", "-filename:" + fname + " -list:" + String.Join(",", myList))
或類似的東西。
UPDATE
當然,你可能要考慮將數據傳遞給該過程的一些更文明的方法。常用的方法包括:
UPDATE
給出的評論所提供的背景下,我會選擇一個完全獨立的服務器上運行的Windows服務(不停止,未調用)與用於同步的數據庫:
- 數據庫表
Tasks
的列input data
,output data
和任何其他你可能想(像某些日期或用戶ID)
- 網頁中插入行該表爲數據待處理出現
- 窗口重複服務(每x秒)查詢表中未處理的任務並執行任務(如果有的話);查詢結果保存在
output data
列
- 對用戶請求的網頁查詢,對於一個給定的任務,並顯示它的狀態,顯示如果它的輸出數據有
這是更爲強大和不斷增長的用戶流量更好的擴展。理想情況下,服務本身可以爲獨立任務生成工作線程以利用多個內核。有了這樣的體系結構,有很多方法可以優化性能並監視任務。
只是出於好奇。您的列表中有多少數據(字節長度)? – Steve 2012-04-04 10:38:53
該列表包含以下格式的文檔標題:「GUID_fileName.pdf」。關於字節長度,我不知道,我應該看看這個,因爲標題會彼此不同。 – Francesco 2012-04-04 12:08:00
我問過,因爲命令行參數長度有一個確定的限制 – Steve 2012-04-04 12:20:35