【问题标题】:how to concatinate two string from single column in mvc razor如何在mvc razor中连接单个列中的两个字符串
【发布时间】:2017-03-17 11:11:16
【问题描述】:

我有一个名为 news 的数据库,并有一个名为 description 的列,我有两个从表(描述列)中获取最后两个条目并将结果显示为单个字符串 string ,即想要在第二个中附加数据最后一列到最后一个数据。但我无法附加文本,并删除了代码。

控制器

    public ActionResult Index()
    {
        var news = db.News.OrderByDescending(u => u.Id).FirstOrDefault();
        return View(news);
    }

查看

@model Project.Models.News

<a href="@Url.Action("NewsInnerPage", "News")">
                    <marquee>
                        <p>
                            @Html.Raw(Model.Description)                                
                        </p>
                    </marquee>
                </a>

sql 列

我想从表最后两个条目中获取值作为单个字符串。谁能帮我写代码。我怎样才能附加字符串???

【问题讨论】:

    标签: asp.net-mvc linq asp.net-mvc-4 razor lambda


    【解决方案1】:
    var news = db.News.OrderByDescending(u => u.Id).Take(2).ToList();
    var concatenatedNews = new News {
         Description = news[0].Description + news[1].Description
    };
    

    或者您可以在一行中完成所有操作

    var news = new News { Description = string.Join("", news.OrderByDescending(u => u.Id).Take(2).Select(u => u.Description)) };
    

    【讨论】:

    • 无法将带有 [] 的索引应用于“IQueryable”类型的表达式
    • 就像我说的,我忘了申请 ToList,再次检查查询 var news = db.News.OrderByDescending(u => u.Id).Take(2).ToList();跨度>
    • 但它显示为两行,我只想显示为单行而不是两个意味着将一个附加到另一个
    • 我怀疑你在字符串的某处有换行符,你能粘贴你想要连接的字符串吗?
    • 不确定你所说的与两行相同的错误是什么意思?结果是否正确,但它显示在 2 行上?无论如何,我只是注意到你有 html 作为一个字符串,所以你在一个字符串中有 2 个标签,所以它会在不同的行上呈现它们,你需要一些 javascript 来获得所需的效果,或者一些字符串处理来从你的标签中获取文本并连接那些
    猜你喜欢
    • 1970-01-01
    • 2012-01-17
    • 2011-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多