ASP.NET Core - upload dużej liczby plików > 1024

0

Cześć,
zacznę od tego, że dopiero uczę się C# i ASP.NET, dlatego proszę o wyrozumiałość jeśli pytanie będzie banalne.

Piszę prostą aplikację, której celem jest pobranie N małych plików (XML-owych) -> odczytanie ich -> wygenerowanie na ich podstawie inny plik XML, który użytkownik będzie mógł sobie pobrać.
Jeden z problemów jest taki, że plików, które będą analizowane jest dużo - bardzo dużo. Obecnie, gdy załączam około 2k plików to wywala mi exception InvalidDataException: Form value count limit 1024 exceeded.
Aplikację piszę w ASP.NET Core, póki co na wersji debug. Czy orientuje się ktoś w jaki sposób mogę zwiększyć ten limit tak do mniej więcej 10k? Pliki są dość małe - 1-5KB.

Z góry dziękuję za pomoc

1

A gdyby zamiast przesyłać pliki, to wysyłać POSTem zawartość tego xmla, a w zwrotce dostać ten wyjściowy XML?

I wtedy zamiast wrzucać na raz tysiące plików, to po prostu klient by wysyłał po X requestów "na raz" i sam odpowiadał za kolejke, odczyt/zapis tego.

Albo po prostu te pliki wysyłać po X, a nie setki czy tysiące na raz.

2

Mało szczegółów. Jak hostujesz aplikację? Jakiego serwera używasz? Jak wysyłasz pliki?

Zerknij na to:
https://stackoverflow.com/a/55478411/1543037
https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.mvc.requestformlimitsattribute?view=aspnetcore-2.1

No i całkiem osobną kwestią jest: po co przesyłać tysiące plików? Co właściwie chcesz rozwiązać?

0

@Afish, dziękuję Ci bardzo! Dodanie atrybutu ze wspomnianego w wątku wydaje się, że pomogło :-).
@WeiXiao Tobie również dziękuję za chęć udzielenia pomocy - chociaż w tym wypadku bardziej pomocny był @Afish!

Odnośnie pytania co chcę osiągnąć:
Mam głupi program powiedzmy, że magazynowy, do którego ktoś zrobił "automat", który eksportuje wszystkie dokumenty magazynowe do plików XML, ale w taki sposób, że każdy dokument jest w osobnym pliku -.-. Dlaczego tak? Pojęcia nie mam, ale... Program jest dość zamknięty, więc ja w nim nic nie zrobię. Tak więc w ciągu miesiąca mam około 4k plików w formacie XML.

Te wszystkie dokumenty trzeba później zaciągnąć do innego programu - księgowego. Dotychczas firma korzystała z programu księgowego Symfonia, w którym został utworzony automat do importu tych XML-ów (by the way automat był tworzony przez tą samą firmę, która wymyśliła ten chory automat do generowania tysięcy XML-ów).

Obecnie firma zmienia program księgowy (ale program magazynowy zostaje). No i do tego nowego programu również trzeba będzie importować te wszystkie dokumenty.
W tym programie magazynowym nie jestem wstanie nawet utworzyć jakiś sensownych zestawień, więc stwierdziłem, że wykorzystam te XML-e, które były/są generowane pod kątem poprzedniego programu.

Idea jest więc taka, że użytkownik pobiera wszystkie te pliki XML a aplikacja przerabia te 4k plików w jeden XML zgodny z nowym programem księgowym (to jest zupełnie inna struktura XML-a).

Pierwotnie sądziłem, że nie powinno być z tym problemów, ale ja jestem zwykłym księgowym, więc brakuje trochę doświadczenia w tych asp.net-owiskich zagadnieniach :)

0

A nie lepiej abyś tą operacje robił od razu?
tzn. user wystawia dokument, zatwierdza go a Ty wtedy przenosisz go do innego systemu.
Teraz robisz hurtem wszystkie na raz

1 użytkowników online, w tym zalogowanych: 0, gości: 1