2013-10-11 2 views
0

У меня есть кнопка, которая по щелчку будет хранить текстовые поля в db, используя соединение generalcontext db.Ошибка CS1061 - Button1_click ASP

protected void Button1_Click(object sender, EventArgs e) 
{ 
    SaveCVInfo2(); 
} 

private void SaveCVInfo2() 
{ 
    using (ConexionGeneralDataContext db = new ConexionGeneralDataContext()) 
    { 
     Usuario_Web columna = new Usuario_Web(); 
    //Add new values to each fields 
    columna.Nombre = nombre.Text; 
    columna.Apellido = Apellidos.Text; 
    columna.Em_solicitado = Empleo.Text; 
    columna.Direccion = DireccionPersonal.Text; 
    columna.Ciudad = Ciudad.Text; 
    columna.Tel_habitacion = TelHabi.Text; 
    columna.Celular = TelCel.Text; 
    columna.Email = userEmail.Text; 
    columna.Nacionalidad = Nacionalidad.Text; 

    //Insert the new Customer object 
    db.Usuario_Web.InsertOnSubmit(columna); 
    //Sumbit changes to the database 
    db.SubmitChanges(); 
    } 
} 

И у меня есть предыдущий метод, в том же файле отделенного кода, называется Register:

protected void Register(object sender, EventArgs e) 
{ 
    if (emailValid()) 
    { 
     string[] extension = { "go" }; 
     int last = 0; 

     bool validFile = true; 
     if (FileUpload1.HasFile) 
     { 
     extension = FileUpload1.FileName.Split('.'); 
     last = extension.Length - 1; 

     if (String.Compare(extension[last], "DOC", true) != 0 && String.Compare(extension[last], "DOCX", true) != 0 && String.Compare(extension[last], "PDF", true) != 0) 
     { 
      validFile = false; 
     } 
     } 

    if (validFile) 
     { 
     ConexionGeneralDataContext db = new ConexionGeneralDataContext(); 
     Usuario_Web columna = new Usuario_Web(); 

     columna.Estatus = 1; 
     columna.Fecha_hora = DateTime.Now; 
     columna.Nombre = nombre.Text; 
     columna.Email = userEmail.Text; 
    columna.Contraseña = classes.main.MD5(contraseña.Text); 

     if (FileUpload1.HasFile) 
     { 
      string path = Server.MapPath("Default.aspx"); 
      path = path.Replace("Default.aspx", ""); 
      path = path + "CurriculumsVitae\\"; 

      Random randomNumber = new Random(); 
      string filename = randomNumber.Next(10000000, 99999999).ToString() + FileUpload1.FileName; 

      string ubicacionReal = createPath(path) + filename; 
      FileUpload1.SaveAs(ubicacionReal); 
      columna.Curriculum_vitae = ubicacionReal; 
     } 
    db.Usuario_Web.InsertOnSubmit(columna); 
     db.SubmitChanges(); 

     MailMessage email = new MailMessage(); 
     email.From = new MailAddress("[email protected]", "Grupo Zulcon"); 
     email.To.Add(userEmail.Text); 
     email.Subject = "¡Bienvenido a nuestra comunidad!"; 

     email.Body = "<div>Gracias por registrarte.</div><div style=\"margin-top:10px\">Estamos altamente comprometidos con tu desarrollo, por ello, te ofrecemos las mejores ofertas laborales.</div><div style=\"margin-top:10px\">Visítanos y postúlate a los cargos que se adapten a tu perfil.</div><div style=\"margin-top:10px\">Mantén tu CV actualizado. Puedes leer nuestra sección “Consejos” si tienes alguna duda en la elaboración del mismo.</div><div style=\"margin-top:10px\">Te contactaremos en caso de tener ofertas de empleo que se ajusten a tu perfil.</div><div style=\"margin-top:10px\">¡Éxito!</div>"; 

     email.IsBodyHtml = true; 

     SmtpClient smtp = new SmtpClient(); 
     smtp.Send(email); 


     double timeout = 120; 
     string identity = columna.ID + "|&*#$|" + columna.Nombre + "|&*#$|" + columna.Email + "|&*#$|" + convertCVPath(columna.Curriculum_vitae) + convert; 

     FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, identity, DateTime.Now, DateTime.Now.AddMinutes(timeout), false, identity); 

     string hashedCookie = FormsAuthentication.Encrypt(ticket); 
     HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hashedCookie); 

     Response.Cookies.Add(cookie); 
     PanelAutenticacion.Visible = false; 
     PanelRespuesta.Visible = true; 
    } 

    else 
    { 
     PanelEmail.Visible = false; 
     PanelArchivo.Visible = true; 
      } 

     } 
     else 
     { 
      PanelEmail.Visible = true; 
      PanelArchivo.Visible = false; 
     } 

    } 

Однако, я уверен, добавив несколько кнопок, из нескольких страниц, которые разделяют ту же codebehind файл.

Но, когда я добавить Button1_Click кроме Register, то Register стартов ошибки метательного:

Error 44 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 51 19 Grupo Zulcon 
Error 45 Se esperaba un identificador C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 55 24 Grupo Zulcon 
Error 46 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 55 26 Grupo Zulcon 
Error 47 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 64 55 Grupo Zulcon 
Error 48 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 64 108 Grupo Zulcon 
Error 49 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 64 162 Grupo Zulcon 
Error 50 Un espacio de nombres no puede contener directamente miembros como campos o métodos. C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 74 17 Grupo Zulcon 
Error 51 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 76 57 Grupo Zulcon 
Error 52 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 78 47 Grupo Zulcon 
Error 53 Se esperaba una clase, un delegado, una enumeración, una interfaz o un struct C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 92 51 Grupo Zulcon 
Error 54 Se esperaba una definición de tipo o espacio de nombres, o el fin del archivo C:\Users\Kristian\Documents\zulcon\Grupo Zulcon - copia\Grupo Zulcon\EnvianosTuCurriculum.aspx.cs 99 21 Grupo Zulcon 

Я не понимаю, почему, мне нужно добавить еще 8 методов (кнопки) для этого aspx.cs отделенного кода файла, каждый метод будет использоваться на другой странице aspx, и все это часть этого решения Visual Studio.

EDIT

Если я оставить только Register метод один, он не будет бросать какие-либо ошибки.

+1

Этот вопрос не соответствует теме, потому что речь идет о типографии –

ответ

1

Дополнительная: Мое предложение было бы следующее:

Я не позволил бы страницам использовать один и тот же код позади файла более 8 страниц. Скорее создан вспомогательный класс (Helper.cs), который вы можете назвать этим методом, то есть SaveCVInfo2 и Register.

SaveCVInfo2 метод будет выглядеть следующим образом в Helper классе

public void SaveCVInfo2(string varOne,string varTwo, string varThree...) 
{ 
    using (ConexionGeneralDataContext db = new ConexionGeneralDataContext()) 
    { 
     Usuario_Web columna = new Usuario_Web(); 
     //Add new values to each fields 
     columna.Nombre = varOne; 
     columna.Apellido = varTwo; 
     columna.Em_solicitado = varThree; 
     //and the rest where the textboxes would have been 


     //Insert the new Customer object 
     db.Usuario_Web.InsertOnSubmit(columna); 
     //Sumbit changes to the database 
     db.SubmitChanges(); 
    } 

} 

Тогда это будет эталонным, как

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Helper helper = new Helper(); 
    helper.SaveCVInfo2(nombre.Text,Apellidos.Text,Empleo.Text,...); 
} 

То же самое для Register. Затем их можно повторно использовать повторно на других 8 страницах.

Если вы повторно используете метод, поделитесь им. Должны применяться принципы SOLID.

+0

WoW, это совет, lol, спасибо, я собираюсь попробовать! И дам вам знать, THX! – NeoVe

+0

Извините, один тупой вопрос, я все еще осваиваю asp.net, что мне писать между '{}' после объявления public void SaveCVInfo2? – NeoVe

+0

Или просто поместите пустой '{}' после public void SaveCVInfo2 (строка varOne, строка varTwo, строка varThree ...)? – NeoVe

Смежные вопросы