Передача файлов с метаданными


0

Я пишу приложение для клиентских окон, которое позволит загружать файлы и соответствующие метаданные на сервер. Например, gear.stl (исходный файл) и gear.stl.xml (метаданные). Я пытаюсь выяснить правильный protcol для использования для передачи файлов.

Я думал об использовании ftp, поскольку он широко используется и проверенный метод передачи файлов, за исключением того, что мне пришлось бы передать 2 файла для каждого фактического файла (.stl и .stl.xml). Однако другая мысль тоже перешла мне на ум ... Что делать, если я создаю объект и обертываю файл, метаданные и каталог, который мне нужен, чтобы передать его, сериализуйте объект и затем отправьте запрос в веб-службу, чтобы передать файл ,

Размер оригинального файла варьируется от 100 до 10 МБ. Размер метаданных, вероятно, будет меньше, чем 200 КБ

Звонок веб-службы кажется мне более легким процессом для десериализации объекта и соответственно распределения файла и соответствующих метаданных. Однако я не уверен, что это хорошая идея или если есть лучший способ передать эти данные, кроме двух описанных мной методов.

Если кто-то может указать мне в правильном направлении, это было бы очень признательно.

1

Вы можете обернуть его в почтовый файл, как это делает «новый» формат офисного документа. Возможно, вы даже сможете использовать их классы для упаковки всего.

Edit:

Посмотрите на System.IO.Packaging.Package класса. Кажется, это то, что вам нужно. Этот класс находится в сборке WindowsBase.dll и стал доступен в .NET 3.0.

PS: Помните, что даже если это zip-файл, его не нужно сжимать. Если у вас очень большие файлы, может быть лучше сохранить их несжатыми. Все зависит от того, как они будут использоваться, и если размер транспорта является проблемой.