foreach (var item in list)
{
ViewBag.md = ViewBag.md + " <br>" + item.Msg;
}
foreach (var itemname in name)
{
ViewBag.name = ViewBag.name + "<br>" + itemname.UserId;
}
<div class="replay">
<a href="#" class="userlogin">@Html.Raw( @HttpUtility.HtmlDecode(ViewBag.name))</a>
<span class="body">
@Html.Raw( @HttpUtility.HtmlDecode(ViewBag.md))
</span>
</div>
显示结果为:
2
2
2
评论内容
评论内容
评论内容
怎么显示为:
2评论内容
2评论内容
2评论内容
谢谢
17 个解决方案
#1
例
var a = new List<int>() { 1, 2, 3 };
var b = new List<string>() { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y).ToList();
Console.WriteLine(string.Join("\n", c));
1评论a
2评论b
3评论c
#2
ViewBag.md = ViewBag.md
+ " <br>" + item.Msg
+ " <br>" ;
#3
如果能确保name和list里面元素能一一对应,可以这样
@for(int i=0;i<name.Count;i++)
{
<div class="replay">
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
</div>
}
还可以将list和name封装在一个类中,将类传到view再处理,像这样:ViewBag.Model=封装对象,view取ViewBag.Model循环显示
@for(int i=0;i<name.Count;i++)
{
<div class="replay">
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
</div>
}
还可以将list和name封装在一个类中,将类传到view再处理,像这样:ViewBag.Model=封装对象,view取ViewBag.Model循环显示
#4
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
#5
没办法遍历 Count和length都没办法用
#6
这样写只有一行会换行 其他的还是一样呢?
#7
两个数组都是 Model.T_MessageComments[]类型的 这个方法好像没办法用
#8
啥叫其他还是一样的?其他是什么东西?
#9
数组一样用
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
#10
数组一样用var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
哈哈哈 现在用一个数组得怎么实现呢?我自己搞了好久都没有实现出来 麻烦你了 谢谢
#11
ViewBag.md = ViewBag.md+ " <br>"+ item.Msg + " <br>" ;
这样写只有一行会换行 其他的还是一样呢?
啥叫其他还是一样的?其他是什么东西?
只有第一行数据会换行 其他数据还是原来哪有显示 不好意思 我没有描述清楚
#12
数组一样用var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
错误 1 运算符“+”无法应用于“Model.T_MessageComments”和“Model.T_MessageComments”类型的操作数
#13
加个 x.ToString() + v.ToString() 也不行么?
#14
加个 x.ToString() + v.ToString() 也不行么?
加上ToString()后可以了 把 c传给前台 前台怎么遍历呢?谢谢您
#15
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
没办法遍历 Count和length都没办法用
在后台controller里:
string Result=""; //内容多用StringBuilder
for(int i=0;i<name.Count;i++)
{
Result+=" <a href='#' class='userlogin'>"+name[i].UserID+"</a>";
Result+=" <span class='body'>"+list[i].Msg+" </span>";
Result+=" <br />";
}
ViewBag.Result=Result;
在前台view里面,在需要出现内容的地方
@Html.Raw(ViewBag.Result)
一句完事
#16
但更一般的做法是在controler将所有数据(ViewBag.md和ViewBag.name)封装进一个Model,传给view并渲染视图,也就是用html的格式将内容呈现给用户,这个工作在客户端做,以减轻controller的负荷
#17
明白了,估计你第一段代码是在controler后台执行的啊!那你这样
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
没办法遍历 Count和length都没办法用
在后台controller里:
string Result=""; //内容多用StringBuilder
for(int i=0;i<name.Count;i++)
{
Result+=" <a href='#' class='userlogin'>"+name[i].UserID+"</a>";
Result+=" <span class='body'>"+list[i].Msg+" </span>";
Result+=" <br />";
}
ViewBag.Result=Result;
在前台view里面,在需要出现内容的地方
@Html.Raw(ViewBag.Result)
一句完事
哥,你厉害 谢谢您问题解决了 我弄了好久都没有解决 也谢谢上面大神的帮助
#1
例
var a = new List<int>() { 1, 2, 3 };
var b = new List<string>() { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y).ToList();
Console.WriteLine(string.Join("\n", c));
1评论a
2评论b
3评论c
#2
ViewBag.md = ViewBag.md
+ " <br>" + item.Msg
+ " <br>" ;
#3
如果能确保name和list里面元素能一一对应,可以这样
@for(int i=0;i<name.Count;i++)
{
<div class="replay">
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
</div>
}
还可以将list和name封装在一个类中,将类传到view再处理,像这样:ViewBag.Model=封装对象,view取ViewBag.Model循环显示
@for(int i=0;i<name.Count;i++)
{
<div class="replay">
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
</div>
}
还可以将list和name封装在一个类中,将类传到view再处理,像这样:ViewBag.Model=封装对象,view取ViewBag.Model循环显示
#4
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
#5
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
没办法遍历 Count和length都没办法用
#6
ViewBag.md = ViewBag.md+ " <br>"+ item.Msg + " <br>" ;
这样写只有一行会换行 其他的还是一样呢?
#7
例var a = new List<int>() { 1, 2, 3 };
var b = new List<string>() { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y).ToList();
Console.WriteLine(string.Join("\n", c));1评论a
2评论b
3评论c
两个数组都是 Model.T_MessageComments[]类型的 这个方法好像没办法用
#8
ViewBag.md = ViewBag.md+ " <br>"+ item.Msg + " <br>" ;
这样写只有一行会换行 其他的还是一样呢?
啥叫其他还是一样的?其他是什么东西?
#9
数组一样用
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
#10
数组一样用var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
哈哈哈 现在用一个数组得怎么实现呢?我自己搞了好久都没有实现出来 麻烦你了 谢谢
#11
ViewBag.md = ViewBag.md+ " <br>"+ item.Msg + " <br>" ;
这样写只有一行会换行 其他的还是一样呢?
啥叫其他还是一样的?其他是什么东西?
只有第一行数据会换行 其他数据还是原来哪有显示 不好意思 我没有描述清楚
#12
数组一样用var a = new int[] { 1, 2, 3 };
var b = new string[] { "评论a", "评论b", "评论c" };
var c = a.Zip(b, (x, y) => x + y);//.ToList();
Console.WriteLine(string.Join("\n", c));
我就奇怪了,相关联的两个序列,为什么要分开保存呢?
错误 1 运算符“+”无法应用于“Model.T_MessageComments”和“Model.T_MessageComments”类型的操作数
#13
加个 x.ToString() + v.ToString() 也不行么?
#14
加个 x.ToString() + v.ToString() 也不行么?
加上ToString()后可以了 把 c传给前台 前台怎么遍历呢?谢谢您
#15
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
没办法遍历 Count和length都没办法用
在后台controller里:
string Result=""; //内容多用StringBuilder
for(int i=0;i<name.Count;i++)
{
Result+=" <a href='#' class='userlogin'>"+name[i].UserID+"</a>";
Result+=" <span class='body'>"+list[i].Msg+" </span>";
Result+=" <br />";
}
ViewBag.Result=Result;
在前台view里面,在需要出现内容的地方
@Html.Raw(ViewBag.Result)
一句完事
#16
但更一般的做法是在controler将所有数据(ViewBag.md和ViewBag.name)封装进一个Model,传给view并渲染视图,也就是用html的格式将内容呈现给用户,这个工作在客户端做,以减轻controller的负荷
#17
明白了,估计你第一段代码是在controler后台执行的啊!那你这样
更正:
<div class="replay">
@for(int i=0;i<name.Count;i++)
{
<a href="#" class="userlogin">@Html.Raw(name[i].UserID)</a>
<span class="body">
@Html.Raw(list[I].Msg)
</span>
<br />
}
</div>
用一个div就可以了,内容都放进这里
没办法遍历 Count和length都没办法用
在后台controller里:
string Result=""; //内容多用StringBuilder
for(int i=0;i<name.Count;i++)
{
Result+=" <a href='#' class='userlogin'>"+name[i].UserID+"</a>";
Result+=" <span class='body'>"+list[i].Msg+" </span>";
Result+=" <br />";
}
ViewBag.Result=Result;
在前台view里面,在需要出现内容的地方
@Html.Raw(ViewBag.Result)
一句完事
哥,你厉害 谢谢您问题解决了 我弄了好久都没有解决 也谢谢上面大神的帮助