public FileResult GeraXML() { var utilizador = db.Utilizadores.Find(WebSecurity.CurrentUserId); InfoPessoal infoP = new InfoPessoal(); InfoExtra infoE = new InfoExtra(); infoP.FirstName = utilizador.Nome; infoP.LastName = utilizador.Apelido; infoP.Email = utilizador.Email; if (utilizador.Morada != null && !utilizador.Morada.Equals("")) infoP.AddInfo = utilizador.Morada; if (utilizador.Avatar != null && !utilizador.Avatar.Equals("")) infoP.PathFoto = utilizador.Avatar; if (utilizador.Nacionalidade != null && !utilizador.Nacionalidade.Equals("")) infoP.Nacionalidade = utilizador.Nacionalidade; infoP.Genero = utilizador.Sexo; if (utilizador.Fax != null && !utilizador.Fax.Equals("")) infoP.Fax = utilizador.Fax; if (utilizador.Contacto != null && !utilizador.Contacto.Equals("")) infoP.Tel = utilizador.Contacto; /* public string CodPostal {get;set;} public string Cidade { get; set; } public string Pais { get; set; } public string WebSite { get; set; }*/ Candidato c = new Candidato(utilizador.UserName, infoP, infoE); var path = Path.Combine(Server.MapPath("~/Europass/"), utilizador.UserName + ".xml"); WriteXML xml = new WriteXML(path, c); xml.WritetoXml(); //Corro bat do java . path = Path.Combine(Server.MapPath("~/Europass/"), utilizador.UserName); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } path = Server.MapPath("~/Europass/runComand2.bat"); Process process = Process.Start(path, utilizador.UserName); while (!process.HasExited) { } //Verifica se object ficheiro foi criado path = Path.Combine(Server.MapPath("~/Europass/"), utilizador.UserName, utilizador.UserName + ".pdf"); bool existe = System.IO.File.Exists(path); //Abre o ficheiro Response.ContentType = "Application/pdf"; // Response.TransmitFile(path); return File(path, Response.ContentType, utilizador.UserName + ".pdf"); }
/// <summary> /// Contructor com o path do ficheiro out. /// </summary> /// <param name="pathfile">PathOut</param> public WriteXML(String pathfile,Candidato cd) { System.IO.File.Create(pathfile).Close(); this.t = System.IO.File.AppendText(pathfile); this.person = cd; }