在遍历中,遍历一个字符串型的viewbag.(xx数组),输出的是字符型,但是我想输出的是字符串型的,怎么转才能转成字符串型
在视图中代码如下: @foreach (var i in ViewBag.News) { <td> @i </td> } 在controller中代码如下: string news = ""; string content=""; if (newsResult.Data != null && newsResult.Data.Count > 0) { foreach (var item in newsResult.Data) { news += item.Title; content += item.Content; } news = news.Substring(0, news.Length - 1); content = content.Substring(0, content.Length - 1); } ViewBag.News = news; ViewBag.content = content;
string.Join("",viewbag.(xx数组));
还是没解决,在foreach中这样写还是输出的字符型
@乐在c#中:没码没答案
@Yu:
在视图中如下: @foreach (var i in ViewBag.News) { <td> @i </td> controller如下: if (newsResult.Data != null && newsResult.Data.Count > 0) { foreach (var item in newsResult.Data) { news += item.Title; content += item.Content; } news = news.Substring(0, news.Length - 1); content = content.Substring(0, content.Length - 1); } ViewBag.News = news; ViewBag.content = content;
@乐在c#中: @i 不能输出?
@Yu: 能啊,输出的是字符型数据,我想要@i 输出的是字符串型的数据
@乐在c#中: @i.ToString() 这样不行?
@Yu: 额,试过了不行
@乐在c#中: 还有@i 输出到页面,也看不出字符型或字符串型
@乐在c#中: @i 是 char类型的, 是可以ToString的
@Yu: 因为我之前有试过其他的方法,出错显示为”char型不能转为string型“的错误提示,所以@i输出的是字符型,在页面显示的间隔也比较大
@Yu: 出错显示”i不包含Tostring定义“
@乐在c#中: 不会的,间隔大是CSS问题
@{ ViewBag.Title = "Index"; }
<style>
td { margin: 0; padding: 0; }
</style>
<h2>Index</h2>
<table cellspacing="0" >
<tr>
@foreach (var i in ViewBag.News)
{
<td>
@Convert.ToString(i)
</td>
}
</tr>
</table>
@乐在c#中: 是 ToString注意大小写
@Yu: 谢谢,解决了,你的方法可行
多贴一点,行不?
在视图中,用foreach遍历一个string型的viewbag.xx数组输出的是字符型,我想把字符型转成字符串型
@乐在c#中:
@foreach (char i in ViewBag.News) { <td> @(i.ToString()) </td> }
你的代码有问题吧
news += item.Title;
content += item.Content;
这拼接起来的 会是数组么? 还有
news = news.Substring(0, news.Length - 1); content = content.Substring(0, content.Length - 1);
看这个情况你应该是想要逗号或者其他字符分开吧 会不会是news += item.Title+","; 才对 然后
ViewBag.News = news.split(',');
还有ViewBag是动态类型 使用的时候需要强转一下foreach(var new in (string[])ViewBag.News )
@mushishi: 难道不是数组也能遍历吗?还有我就是想强转才出现char不能转为string型的错误
@乐在c#中: 比如string str="abc"; str[0] 是'a'是一个char 当然不能转成string类型
@mushishi: 原来是这样啊,明白了,谢谢
@乐在c#中: 嗯哈。字符串是'串'。是字符的组合 而不是它爹。自然转不了。嘿嘿