Usuário com melhor resposta
Serviço Rest stream file

Pergunta
-
Respostas
-
Cara,
Na pagina code.msdn.microsoft existe um, veja:
Muito obrigado pelos links, eu dei uma olhada, mas eu estou usando o Rest Template para o WCF.
Conhece algum exemplo com REST ?
http://code.msdn.microsoft.com/windowsdesktop/Upload-files-using-a-REST-13f16af2Vitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/- Marcado como Resposta Felipe Gonzales sexta-feira, 30 de novembro de 2012 11:53
Todas as Respostas
-
Felipe não trabalho muito com WCF, mais existe uns projetos mostrando como implementar upload/download com WCF, veja:
http://www.codeproject.com/Articles/166763/WCF-Streaming-Upload-Download-Files-Over-HTTP
http://www.codeproject.com/Articles/37651/WCF-Large-File-Download-Upload-Service
http://www.codeproject.com/Articles/20364/Progress-Indication-while-Uploading-Downloading-FiVitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/ -
-
Cara,
Na pagina code.msdn.microsoft existe um, veja:
Muito obrigado pelos links, eu dei uma olhada, mas eu estou usando o Rest Template para o WCF.
Conhece algum exemplo com REST ?
http://code.msdn.microsoft.com/windowsdesktop/Upload-files-using-a-REST-13f16af2Vitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/- Marcado como Resposta Felipe Gonzales sexta-feira, 30 de novembro de 2012 11:53
-
estou usando o seguinte código para transferir arquivos com WCF
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IUploadService" in both code and config file together. [ServiceContract] public interface IUploadService { [OperationContract] void UploadFile(RemoteFileInfo request); } [MessageContract] public class RemoteFileInfo : IDisposable { [MessageHeader(MustUnderstand = true)] public string FileName; [MessageHeader(MustUnderstand = true)] public long Length; [MessageBodyMember(Order = 1)] public System.IO.Stream FileByteStream; public void Dispose() { if (FileByteStream != null) { FileByteStream.Close(); FileByteStream = null; } } }
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "UploadService" in code, svc and config file together. public class UploadService : IUploadService { public void UploadFile(RemoteFileInfo request) { FileStream targetStream = null; Stream sourceStream = request.FileByteStream; string uploadFolder = ConfigurationManager.AppSettings["destino"]; if (!Directory.Exists(uploadFolder)) Directory.CreateDirectory(uploadFolder); string filePath = Path.Combine(uploadFolder, request.FileName); using (targetStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None)) { //read from the input stream in 65000 byte chunks const int bufferLen = 65000; byte[] buffer = new byte[bufferLen]; int count = 0; while ((count = sourceStream.Read(buffer, 0, bufferLen)) > 0) { // save to output stream targetStream.Write(buffer, 0, count); } targetStream.Close(); sourceStream.Close(); }
}
}