Air-Gear Posted December 28, 2021 at 06:55 PM Report Share #625097 Posted December 28, 2021 at 06:55 PM Olá pessoal! Eu fiz um código de enviar fotos e salvar os dados dos mesmo, como novo nome e data de envio. A parte Front-End está praticamente pronta, já envia uma ou mais fotos, tem os nomes renomeados e envia os novos nomes juntos com as datas de envio e outros dados. Agora no Back End que preciso de ajuda. No código Back-End, já chega os campos com os dados preenchidos dentro do array Arq. Na hora de passar na classe clUpload, passa normalmente, mas percebi que passa em cima do anterior e retoma somente o ultimo do array. Ainda estou iniciando no Back-End em C#, tentei transformar uma classe em array, mas não conseguir. Alguém pode me ajudar? Segue o código: public class clUpload { #region insert internal static tbUploadSCP novoUpload(objUpload obj) { tbUploadSCP uploadA = new tbUploadSCP(); using (TransactionScope ts = new TransactionScope()) { using (Repository<tbUploadSCP> repSol = new Repositoryupload()) { for (int i = 0; i < obj.arq.Count; i++) { uploadA = new tbUploadSCP { url = obj.arq[i].url, userId = obj.arq[i].userId, upIdAcao = obj.arq[i].upIdAcao, upTipo = obj.arq[i].upTipo, upData = obj.arq[i].upData, }; repSol.Add(uploadA); } } ts.Complete(); return uploadA; } } } Link to comment Share on other sites More sharing options...
M6 Posted December 28, 2021 at 06:59 PM Report Share #625098 Posted December 28, 2021 at 06:59 PM Repara que estás a fazer um ciclo onde estás a adicionar a variável uploadA à lista repSol mas o que tu retornas não é a lista repSol mas sim a variável uploadA. Ora, no final do ciclo, a variável uploadA tem exatamente o último elemento. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Air-Gear Posted December 28, 2021 at 07:20 PM Author Report Share #625099 Posted December 28, 2021 at 07:20 PM 7 minutos atrás, M6 disse: Repara que estás a fazer um ciclo onde estás a adicionar a variável uploadA à lista repSol mas o que tu retornas não é a lista repSol mas sim a variável uploadA. Ora, no final do ciclo, a variável uploadA tem exatamente o último elemento. Pelo que entendi, para que o uploadA retorne todos os dados da listas eu preciso adicionar o repSol junto. Seria isso? Link to comment Share on other sites More sharing options...
M6 Posted December 29, 2021 at 09:44 AM Report Share #625104 Posted December 29, 2021 at 09:44 AM Não. Tens apenas de devolver o repSol, uma vez que essa lista já tem todos os resultados. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Air-Gear Posted December 29, 2021 at 10:45 AM Author Report Share #625106 Posted December 29, 2021 at 10:45 AM 56 minutos atrás, M6 disse: Não. Tens apenas de devolver o repSol, uma vez que essa lista já tem todos os resultados. Bom, eu substituir o uploadA pelo repSol e apontou o erro "Não é possível atribuir a "repSol" porque ele é um "variável using"" Link to comment Share on other sites More sharing options...
M6 Posted December 29, 2021 at 04:43 PM Report Share #625112 Posted December 29, 2021 at 04:43 PM O resultado que pretendes está na variável repSol. Tens de alterar o teu código para que o retorno seja do mesmo tipo da variável repSol (o mesmo se aplica a quem vai receber o resultado da chamada). 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Air-Gear Posted December 29, 2021 at 04:56 PM Author Report Share #625113 Posted December 29, 2021 at 04:56 PM Eu fiz essa modificação, acredito que estou no caminho, mas ainda aponta o mesmo erro. public class clUpload { #region insert internal static Repository <tbUploadSCP> novoUpload(objUpload obj) { using (TransactionScope ts = new TransactionScope()) { using (Repository<tbUploadSCP> repSol = new Repositoryupload()) { for (int i = 0; i < obj.arq.Count; i++) { repSol = new tbUploadSCP { url = obj.arq[i].url, userId = obj.arq[i].userId, upIdAcao = obj.arq[i].upIdAcao, upTipo = obj.arq[i].upTipo, upData = obj.arq[i].upData, }; } } ts.Complete(); return repSol; } } } Link to comment Share on other sites More sharing options...
M6 Posted December 30, 2021 at 09:17 AM Report Share #625130 Posted December 30, 2021 at 09:17 AM Repara que agora não estás a adicionar os elementos ao repSol. Agora estás, por cada elemento da lista obj, a criar um novo repSol com o elemento atual do ciclo. Assim, quando o ciclo termina, o repSol só vai ter o último elemento. Tens de criar o repSol antes do inicio do cliclo e dentro do ciclo vais adicionando os elementos, 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now