小编Dar*_*oki的帖子

如何使用LINQ对两个可能字段之一进行分组?

我正在尝试获取与给定用户的最新联系,按用户分组:

public class ChatMessage
{
    public string SentTo { get; set; }
    public string SentFrom { get; set; }
    public string MessageBody { get; set; }
    public string SendDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

用户的联系信息可以是SentToSentFrom.

List<ChatMessage> ecml = new List<ChatMessage>();
var q = ecml.OrderByDescending(m => m.SendDate).First();
Run Code Online (Sandbox Code Playgroud)

会给我最新的消息,但我需要每个用户的最后一条消息.我能找到的最接近的解决方案是LINQ Max Date with group by,但我似乎无法找出正确的语法.如果我不需要,我宁愿不创建多个List对象.如果用户的信息在SentTo,我的信息将在SentFrom,反之亦然,所以我确实有一些方法来检查用户的数据在哪里.

我提到过我对LINQ很新吗?任何帮助将不胜感激.

c# linq group-by

5
推荐指数
1
解决办法
81
查看次数

选择jquery typeahead.js后清除文本框

感谢SO上列出的精彩建议,我能够预先确定一个类型,以便在选中时更新表格.我需要做的最后一步是清除选择期间/期间/之后的文本框.我已经尝试在onchange事件中添加内容,拦截select事件等.似乎没有任何工作.我在这里找到的唯一其他参考资料没有答案.有自动完成的响应,但我似乎无法适应它们.任何帮助将不胜感激.

    $(document).ready(function () {

    var ds = [
           @if (ViewData.ModelState.IsValid)
             {
                 var index = 0;
                 foreach (var person in Model)
                 {
                     var jaUser = "{ name: \" " + person.UserName + "\", mobi: \"" + person.MobilePhone + "\" }";
                     if (index > 0) { jaUser = ',' + jaUser; }

                                   @Html.Raw(jaUser)                                       
                     index++;
                 }
             }
    ];

    var d = new Bloodhound({
        datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'),
        queryTokenizer: Bloodhound.tokenizers.whitespace,
        local: ds
    });
    d.initialize();

    $('#contactSearch').typeahead(
{
    hint: true,
    highlight: true,
    minLength: 1,
},
{
    name: 'd', …
Run Code Online (Sandbox Code Playgroud)

jquery typeahead.js

5
推荐指数
1
解决办法
1万
查看次数

修改DAL,System.ArgumentException时出错,"已存在具有相同密钥的条目"

好吧,我完全被这个困扰了.我可能没有足够的信息在这里发布,但我甚至不知道从哪里开始寻找.我正在尝试在DAL.edmx文件上"从数据库更新模型".我将一个字段包含在之前未包含的视图中.我尝试刷新,然后我尝试重命名数据库中的视图并从DAL中删除视图,以便我可以重新添加它.我有两次

在此输入图像描述

接下来,我无缘无故地尝试将我重命名的视图添加到DAL中,得到了相同的异常.从DAL.tt手动删除没有帮助.谷歌搜索问题,只有2个不相关的结果.我不知道哪里开始寻找.

我没有写它,但这里是视图的源sql(如果它有帮助).EF不会添加重命名的视图这一事实暗示它可能与SQL有关吗?SQL在mngmnt studio中运行正常.

SELECT     ID, IssueID, IssueTypeID, IssueText, IssueCreateDate, WeekendDate, CustomerName, Employee, 
                  CONVERT(DECIMAL(6, 2), AdjustedTotalRHours, 101) AS AdjustedTotalRHours, AdjustedTotalOHours, 
                  AdjustedTotalRHours + AdjustedTotalOHours AS Hours, InvoiceNumber, AdjustedInvoiceAmount, 
                  COALESCE
                      ((SELECT     SUM(InvoiceAmount) AS Expr1
                          FROM         TrendingDataFinal AS I1
                          WHERE     (InvoiceNumber = T1.InvoiceNumber) AND (CompanyID = T1.CompanyID) AND 
                                                (CalType = 'F') AND (Aident = T1.Aident)), 0) AS TotalInvoiceAmount, InvoiceDate, 
                  ROUND(DATEDIFF(DAY, InvoiceDate, GETDATE()), 0) AS DaysOutstanding, Notes, Aident, EINC, IsClosed, 
                  CompanyID,
                      (SELECT     COUNT(ne.EntryID) AS Expr1
                        FROM          Madison.Notes.Note AS n INNER JOIN
                                               Madison.Notes.NoteEntry AS ne …
Run Code Online (Sandbox Code Playgroud)

c# sql-server-2008 asp.net-mvc-4 entity-framework-5

5
推荐指数
4
解决办法
3542
查看次数

Log4net与Entity Framework 5和MVC4

所以我开始这个新项目,并希望使用Log4net登录数据库.我正在使用EF进行其他事情并且连接正常.出于某种原因,L4N没有记录任何内容,但没有抛出任何错误.只是想知道我可能缺少哪些步骤,希望有人可以指出.我需要以某种方式"保存"到数据库吗?Thanx提前这么多.

我的web.config:

<log4net> 
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
  <bufferSize value="100" />
  <connectionType value="System.Data.EntityClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  <connectionString value="data source=myserver;initial catalog=Reporting;integrated security=false;persist security info=True;User ID=myid;Password=mypassword" />
  <commandText value="INSERT INTO [myschema].[Log] ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
  <parameter>
    <parameterName value="@log_date" />
    <dbType value="DateTime" />
    <layout type="log4net.Layout.RawTimeStampLayout" />
  </parameter>
  <parameter>
    <parameterName value="@thread" />
    <dbType value="String" />
    <size value="255" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%thread" />
    </layout>
  </parameter>
  <parameter>
    <parameterName value="@log_level" />
    <dbType value="String" />
    <size value="50" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%level" …
Run Code Online (Sandbox Code Playgroud)

c# log4net entity-framework asp.net-mvc-4 entity-framework-5

4
推荐指数
1
解决办法
7644
查看次数