2016-06-23 27 views
0

とasp.netでSystem.OutOfMemoryExceptionに私が)の.xmlファイルをアップロードしますがds.GetXml(上のエラー 'System.OutOfMemoryExceptionに' を取得しています。 C#でasp.netのの.xmlの大きなファイルのアップロードエラー - C#

small .xmlファイルは正常に動作していますが、大きなファイルではありません。私は60MBのファイルで試していますが、失敗し、ds.GetXml()メソッドでメモリ例外が発生しました。

詳細ビュー: System.OutOfMemoryException:メモリ不足例外が原因で、関数の評価が無効になりました。

DataSet dsCompendium = General.getDataSet4mXML(strFilePath,strFileName); 
// this is custom function to get dataset from XML : getDataSet4mXML(string,string) 
DataTable dtCompendium = dsCompendium.Tables[1]; 
strXML = dsCompendium.GetXml(); 

<httpRuntime targetFramework="4.5.1" maxRequestLength="1048576" />  

<security> 
    <requestFiltering> 
    <requestLimits maxAllowedContentLength="1073741824" /> 
    </requestFiltering> 
</security> 

私を助け

+1

たXmlReaderを作成するには

あなたはあなたのコードを投稿することができますか? – Sachu

+0

コードを挿入しました。ここでのエラーが発生しました。 –

答えて

0

は、web.configファイル内のhttpRuntime maxRequestLengthの値の値を参照してください。それをより大きな数字に変更してみてください。

+0

maxRequestLength = "314572800" –

+1

私はこのリンクに行きます:http://stackoverflow.com/questions/33921019/asp-net-uploading-big-files-throws-system- outofmemoryexceptionと完璧に働いています。私はプロジェクトのプロパティをiisをローカルに変更しています... –

0

HTTPウェブリクエストあなたのケースではサイズを超えています。

4MBのデフォルト値はmachine.configに設定されていますが、web.configで上書きすることができます。例えば、20メガバイトにアップロード制限を拡大するために、あなたがこれを行うだろう:

<system.webServer> 
    <security> 
     <requestFiltering> 
     <requestLimits maxAllowedContentLength="1073741824" /> 
     </requestFiltering> 
    </security> 
</system.webServer> 

<system.web> 
    <httpRuntime executionTimeout="240" maxRequestLength="20480" /> 
</system.web> 

編集

上記IIS7とするために、あなたはまた、以下の行を追加する必要があります

注:maxAllowedContentLengthはバイト単位で測定されます。

+0

+0

IISの終了時にリクエスト制限を確認しましたか? –

+0

[こちら](https://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits)リンクをクリックすると、同じことを確認できます。 –

0

DataSet ReadXml(XmlReader)メソッドを使用してください。

FileStream st = File.Open(@"filepath", FileMode.Open); 
XmlReader reader = XmlReader.Create(st); 
DataSet ds = new DataSet(); 
ds.ReadXml(reader); 
関連する問題