1-------------------- 我在asp.net后台C#中用Session["UserName"]是否为空时,会出现未将对象引用设置到对象的实例
为什么会出现这样的问题呀..要怎么解决呀..难道第一次打开就得设置Session["UserName"]了..要怎么呀,,因为要判断是游客还是用户---------------------------------------------------------------------
Session["userName"] 不存在为null.
string strU=Session["userName"]== null?"":Session["userName"].ToString();
if(strU.length>0)
{
}
else
{
}
或
public partial class _1_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Session["userName"] != null)
{
}
else
{
}
}
}
2-------------------------------------我希望根据DataSet中的表个数 需要生成对应的dataGridView,
并将dataGridView放到Panel中。
生成的dataGridView的DataSource对应DataSet中的表------------------------
private void CreateC1Grid(DataSet ds)
{
for (int i = 0; i <= ds.Tables.Count- 1; i++)
{
DataGridView dgv = new DataGridView();
dgv.Loaction = new Point(0,0);//这里自己调整位置
dgv.DataSource = ds.Tables[i];
this.panel1.Controls.Add(dgv);
} }
3---------------------------------C# 存储图片到mysql
protected void btnSubmit_Click(object sender, EventArgs e)
{ Int64 intImageSize;
string strImageType;
Stream ImageStream;
//获得图片的大小
intImageSize = FileUpload1.PostedFile.ContentLength;
//获得图片类型
strImageType =FileUpload1.PostedFile.ContentType;
//读取图片
ImageStream = FileUpload1.PostedFile.InputStream;
byte[] ImageContent=new byte[intImageSize];
int intStatus;
intStatus = ImageStream.Read(ImageContent, 0,Convert.ToInt32(intImageSize));
SqlConnection conn = new SqlConnection(ConnectionString);
SqlCommand insertCmd = new SqlCommand("insert into AddressLists(userId,frdName,frdPhone,frdMobilePhone,frdBirthday,frdAddress,frdEmail,frdQQ,frdImage) values(@userId,@Name,@Phone,@MobilePhone,@Birthday,@Address,@Email,@QQ,@Image)", conn);
insertCmd.Parameters.Add("@userId", SqlDbType.VarChar, 15);
insertCmd.Parameters.Add("@Name", SqlDbType.VarChar, 10);
insertCmd.Parameters.Add("@Phone", SqlDbType.VarChar, 15);
insertCmd.Parameters.Add("@MobilePhone", SqlDbType.VarChar, 11);
insertCmd.Parameters.Add("@Birthday", SqlDbType.DateTime);
insertCmd.Parameters.Add("@Address", SqlDbType.VarChar, 200);
insertCmd.Parameters.Add("@Email", SqlDbType.VarChar, 50);
insertCmd.Parameters.Add("@QQ", SqlDbType.VarChar, 15);
insertCmd.Parameters.Add("@Image", SqlDbType.Image);
insertCmd.Parameters["@userId"].Value = Session["login_name"].ToString();
insertCmd.Parameters["@Name"].Value = txtName.Text;
insertCmd.Parameters["@Phone"].Value = txtUtel2.Text;
insertCmd.Parameters["@MobilePhone"].Value = txtUtel3.Text;
insertCmd.Parameters["@Birthday"].Value = Convert.ToDateTime(txtBirthday.Text);
insertCmd.Parameters["@Address"].Value = txtUaddr.Text;
insertCmd.Parameters["@Email"].Value = txtUemail.Text;
insertCmd.Parameters["@QQ"].Value = txtUQQ.Text;
insertCmd.Parameters["@Image"].Value = ImageContent;
try
{
conn.Open();
int flag = insertCmd.ExecuteNonQuery();
if (flag > 0)
{
//Response.Write(" <script language=javascript>alert('成功添加好友记录!') </script>");
Label1.Text = "成功添加好友记录!";
}
else
{
//Response.Write(" <script language=javascript>alert('添加好友记录失败,查看输入是否正确!') </script>");
Label1.Text = "添加好友记录失败,查看输入是否正确!";
}
}
catch (System.Exception ee)
{
//Response.Write(" <script language=javascript>alert('" + ee.Message.ToString() + "') </script>");
Label1.Text = ee.Message.ToString();
}
finally
{
//conn.Close();
}
}
4---------------------------------------------------三层模式
创建Model,实现业务实体。
创建IDAL,实现接口。
创建SQLServerDAL,实现接口里的方法。
增加web.config里的配置信息,为SQLServerDAL的程序集。
创建DALFactory,返回程序集的指定类的实例。
创建BLL,调用DALFactory,得到程序集指定类的实例,完成数据操作方法。
创建WEB,调用BLL里的数据操作方法。可参考dotbbs
连接字符串可在安装时配置
http://www.cnblogs.com/cresuccess/archive/2008/12/10/1351675.html
5--------------------------------------------------用户控件 模版页 主题
我个人认为模版页是用户控件的一个升级,而主题虽然方便我反而觉得好不好用,跟css没什么区别,虽然在运行时优先于css。也就是根据skinid来生成相应的html样式,还不如直接使用css,而skin貌似是专门针对服务器控件的
主题可定义控件或页的许多属性,而不仅仅是样式属性
-------------------------------------------------------------------------------------------------------------
主题可包括图形。
主题层叠的方式与样式表不同。
每页只能应用一个主题。不能向一页应用多个主题,这与样式表不同,样式表可以向一页应用多个样式表。
http://www.cnblogs.com/lizhiwen/archive/2007/11/16/961435.html
6---------------------------------------------Server.HtmlEncode()和Server.HtmlDecode()在asp.net中的应用-------
HtmlEncode 对要在浏览器中显示的字符串进行HTML编码并返回已编码的字符串。 HtmlDecode 对HTML编码的字符串进行解码
http://www.cnblogs.com/cuihongyu3503319/archive/2006/10/09/524046.aspx
7----------------------------------------------GridView里的每行文字太多如何自动隐藏超出的部分
GridView设样式table-layout:fixed
8-----------------------------------------注册会员如何验证?-是不是先本地用js验证?
然后再服务端写验证??-----------------------------------------------------
验证填写的信息用js实现,验证用户名是否存在用ajax异步查询实现
9----------------------------------------B/S客户端插件如何自动更新?
http://blog.youkuaiyun.com/flashasp/archive/2007/05/19/1616225.aspx