无法赋值

lyp524 2009-03-11 10:25:43

public void BindData()
{
if (Request.QueryString["id"] != null)
{
BindNewsKind();
int NewsId = Convert.ToInt32(Request.QueryString["id"]);
News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(NewsId);
this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
this.DropNewsKinds1.SelectedIndex = SingleNews.NewsKindId;
this.WebNewsBody1.Text = SingleNews.NewsBody;
}

}

分布调试,
Convert.ToInt32(Request.QueryString["id"])
,取值没问题,但是就是无法赋值给NewsId,NewsId为空。很奇怪的是
this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
竟然能赋值
换了种写法:

public void BindData()
{
if (Request.QueryString["id"] != null)
{
BindNewsKind();
//int NewsId = Convert.ToInt32(Request.QueryString["id"]);
News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(Convert.ToInt32(Request.QueryString["id"]));
this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
this.DropNewsKinds1.SelectedIndex = SingleNews.NewsKindId;
this.WebNewsBody1.Text = SingleNews.NewsBody;
}

}

this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
可以赋值了,但是
this.WebNewsBody1.Text = SingleNews.NewsBody
又不能了
控件名称也没有错
...全文
100 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellensee 2009-03-11
  • 打赏
  • 举报
回复
大家好
我是猎头公司的helen
现在有上海的。net开发的职位
4,5年的c#开发经验
英文可以沟通
项目很不错
难得的机会
有感兴趣的朋友联系我
msn:helensee@msn.cn
邮箱:helen@jingjie-wisemen.com
lyp524 2009-03-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 Sandy945 的回复:]
不知道你程序具体是怎么写的,你还是改成这样吧

C# codepublicvoidBindData()
{intNewsId=0;if(int.TryParse(Request.QueryString["id"],outNewsId))
{
BindNewsKind();

News SingleNews=newNews();
SingleNews=News.GetNewsByNewsId(NewsId);this.TxtNewsTitle1.Text=SingleNews.NewsTitle;this.DropNewsKinds1.SelectedIndex=SingleNews.NewsKindId…
[/Quote]
还是无法赋值
lyp524 2009-03-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xiaowen_ly 的回复:]
NewsId 必须先赋值,如2楼;否则编译通不过。
编译主要检查语法,比如int NewsId = Convert.ToInt32(Request.QueryString["id"]);右侧在运行时才取到值,编译时为空。把一个空值赋给int要出错。其他问题也一样

[/Quote]
生成的时候没提示错误啊
xiaowen_ly 2009-03-11
  • 打赏
  • 举报
回复
NewsId 必须先赋值,如2楼;否则编译通不过。
编译主要检查语法,比如int NewsId = Convert.ToInt32(Request.QueryString["id"]);右侧在运行时才取到值,编译时为空。把一个空值赋给int要出错。其他问题也一样
clever_yang 2009-03-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 Sandy945 的回复:]
不知道你程序具体是怎么写的,你还是改成这样吧


C# code
public void BindData()
{
int NewsId = 0;
if(int.TryParse(Request.QueryString["id"], out NewsId))
{
BindNewsKind();

News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(NewsId);
this.TxtNewsTitle1.Text = SingleNews.New…
[/Quote]阿非的使用OUT关键字的方法不错,这样既避免了类型转换失败带来的异常,又将转换成功后的值赋给了新的变量~。。。
阿非 2009-03-11
  • 打赏
  • 举报
回复
不知道你程序具体是怎么写的,你还是改成这样吧


public void BindData()
{
int NewsId = 0;
if(int.TryParse(Request.QueryString["id"], out NewsId))
{
BindNewsKind();

News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(NewsId);
this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
this.DropNewsKinds1.SelectedIndex = SingleNews.NewsKindId;
this.WebNewsBody1.Text = SingleNews.NewsBody;
}

}


阿非 2009-03-11
  • 打赏
  • 举报
回复

public void BindData()
{
int NewsId = 0;
int.TryParse(Request.QueryString["id"], out NewsId);

BindNewsKind();

News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(NewsId);
this.TxtNewsTitle1.Text = SingleNews.NewsTitle;
this.DropNewsKinds1.SelectedIndex = SingleNews.NewsKindId;
this.WebNewsBody1.Text = SingleNews.NewsBody;


}
wuyq11 2009-03-11
  • 打赏
  • 举报
回复
int NewsId =0;
if(int.TryParsr(Request.QueryString["id"].toString(),out NewsId))
{
News SingleNews = new News();
SingleNews = News.GetNewsByNewsId(NewsId);
}
看看GetNewsByNewsId方法里值是否有。是否能查询出数据。

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧