我有一个按钮,点击后,会使用`generalcontext db connection将文本框存储到数据库中。
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("administrador@grupozulcon.com.ve", "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
我不明白为什么,我需要在这个aspx.cs
代码隐藏文件中添加8个方法(按钮),每个方法都会在不同的aspx
页面中使用,所有这些都是这个Visual Studio解决方案。
修改
如果我只留下Register
方法,它不会抛出任何错误。
答案 0 :(得分: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校长应该适用。
答案 1 :(得分:0)
解决了,不需要}
。