小编Cap*_*chi的帖子

在使用MVC应用程序和针对MySQL的MS Access时记录覆盖

一些背景知识:我们开发了客户端MS Access应用程序的ASP.NET MVC端口.应用程序使用/使用MySQL作为ODBC的数据存储.我们遇到的是,如果客户端使用MS Access应用程序捕获新记录,并且在MVC应用程序捕获新记录后不久,MVC应用程序的记录似乎会覆盖Access应用程序创建的最后一条记录,如以及创建第二条记录.

实际上,Access应用程序的记录最初看起来像这样

ID | NAME | SURNAME
1  | joe  | Schmoe  
Run Code Online (Sandbox Code Playgroud)

但是,当MVC应用程序创建其中一条记录时,会发生以下情况:

ID | NAME  | SURNAME
1  | james | smith
2  | james | smith
Run Code Online (Sandbox Code Playgroud)

MVC应用程序似乎覆盖了Access捕获的最后一条记录,以及创建新记录.

我们使用Entity Framework 5.我们所做的就是保存记录

var record = new Person(){NAME = "james", SURNAME = "smith"};
db.People.Add(record);
db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

只有在客户端使用Access应用程序时才会发生此类事情.并且只有当最后添加的记录来自Access应用程序且新记录来自MVC/EF应用程序时才会发生.

任何输入将不胜感激.

通过Access捕获一系列记录时,不会发生这种情况.通过Entity Framework捕获一系列记录时,它不会发生.首先通过Entity Framework和THEN Access捕获时,不会发生这种情况.它仅在序列为Access first,Entity Framework second时发生.

c# mysql ms-access odbc entity-framework

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

EPPlus的通用Excel生成器功能

如何为LINQ查询构建通用的EPPlus Spreadsheet函数?

更新:需要专门用于ASP.NET MVC应用程序.

c# asp.net-mvc epplus

4
推荐指数
2
解决办法
9272
查看次数

C#Generic List.Any()抛出System.NullReferenceException

请考虑以下部分视图代码段

List<sellingPrice> Prices = ViewBag.Prices;
foreach (var mgmp in mg.messageGroup.messageGroupMessagePLUs)
{
    if (Prices.Any(x => x.pluId == mgmp.messagePLU.plu.pluId))
    {
        //do stuff
    }
}
Run Code Online (Sandbox Code Playgroud)

对于db中的特定产品,该行

if (Prices.Any(x => x.pluId == mgmp.messagePLU.plu.pluId))
Run Code Online (Sandbox Code Playgroud)

抛出System.NullReferenceException.检查代码显示mgmp 一个对象,而价格包含元素.但是,x的值为null.现在,我的印象是我只是测试是否存在满足我的测试的任何"x",而不是要求它返回"x".

这是一个非常恼人的问题.希望有人可以指出真正明显的解决方案.

linq entity-framework generic-list c#-4.0

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

实体的主键字段设置为0而不是null

我有一个Person实体类型,如下所示:

public partial class Person
{    
    public int PersonID { get; set; }
    public byte Gender { get; set; }
    public string IDNumber { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

当我为了将他保存到db而创建一个新Person时,主键PersonID设置为0,而不是null.

代码:

var theNewGuy = new MyEntities.Person();
Run Code Online (Sandbox Code Playgroud)

就在这一行之后,NewGuy.PersonID = 0.问题是,如何告诉它插入一个新的Person并为其分配下一个可用的主键?显然,我不希望它为0,但是在数据库中已经存在PersonID为0的Person;

保存代码:

Velo.People.Add(theNewGuy);
Velo.SaveChanges();//throws error
Run Code Online (Sandbox Code Playgroud)

抛出异常: 违反PRIMARY KEY约束'PK_PERSON'.无法在对象'dbo.Person'中插入重复键.重复键值为(0).该语句已终止.

c# asp.net-mvc entity-framework

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

EF函数导入无法识别StoredProc返回的列

可能重复:
EF4 - 所选存储过程不返回任何列

我有一个存储过程,它填充#temp表,对其记录执行操作,然后选择记录.

问题是,当我尝试创建函数导入并单击[获取列信息]时,结果窗格显示消息"所选存储过程或函数不返回任何列".

现在,我知道它确实返回了列,因为如果我直接从db运行它,我会得到预期的结果集.

存储过程可以总结如下:

SELECT P.PersonID, P.Surname, P.NickName, P.DateofBirth
INTO #SeriesCompleted   
FROM 
    Table1 T (NOLOCK)
INNER JOIN 
    Table2 P (NOLOCK) ON T.PID = P.PID
;
Select r.PID, SUM(rt.Distance) 'Distance'
INTO #Distance
FROM 
    #SeriesCompleted sc
    inner join table3 rsr (NOLOCK) on rsr.SeriesId = sc.SeriesId
    inner join table4 r (NOLOCK) on r.PID = sc.PID
    inner join table5 rt (NOLOCK) on rt.RouteID = r.RouteID
GROUP BY r.PID;

UPDATE #SeriesCompleted
SET Distance =  d.Distance
FROM #SeriesCompleted sc
INNER JOIN #Distance …
Run Code Online (Sandbox Code Playgroud)

asp.net entity-framework sql-server-2008 visual-studio-2012

3
推荐指数
1
解决办法
6465
查看次数

在 C# 中计算中值绝对偏差

我需要对一个数字集执行一些统计计算,我需要计算的其中一项是中值绝对偏差。我得到了一个 ISO 标准,它告诉我的是

在此处输入图片说明

我不知道如何处理这些信息,因为我没有接受过任何统计数学培训。因此,我无法将上述内容转换为 C# 函数。

c# math statistics

3
推荐指数
1
解决办法
2028
查看次数

在GMaps v3 DrawingManager按钮列表中添加自定义按钮

我无法在线找到有关我的问题的高质量信息,所以我来到了这里。我想做的是在Google Maps的DrawingManager的控件中添加一个自定义按钮。

下面是添加通常的opiton组的代码。但是我不知道如何向中添加自己的按钮之一drawingModes

var drawingManager = new google.maps.drawing.DrawingManager({
        //drawingMode: google.maps.drawing.OverlayType.MARKER,
        drawingControl: true,
        drawingControlOptions: {
            position: google.maps.ControlPosition.TOP_CENTER,
            drawingModes: [
              google.maps.drawing.OverlayType.MARKER,
              google.maps.drawing.OverlayType.CIRCLE,
              google.maps.drawing.OverlayType.POLYGON,
              google.maps.drawing.OverlayType.POLYLINE,
              google.maps.drawing.OverlayType.RECTANGLE
              //how do I add my special little button here?
            ]
        }
    });
    drawingManager.setMap(map);
Run Code Online (Sandbox Code Playgroud)

javascript google-maps-api-3

2
推荐指数
1
解决办法
3634
查看次数

在Orchard CMS中查看Content页面时出现NullReference异常

在OrchardCMS v1.8.1.0中,单击内容链接(/ Admin/Contents/List)文件名Modules\Orchard.MediaLibrary\Views\Parts\Document.SummaryAdmin.cshtml时收到以下错误消息:

你调用的对象是空的.

Source Error:

Line 3:  @{

Line 4:      DocumentPart documentPart = Model.ContentPart;
//The following line throws the exception
Line 5:      var mediaPart = ((ContentItem)Model.ContentItem).As<MediaPart>();

Line 6:  }

Line 7:
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪:

[NullReferenceException: Object reference not set to an instance of an object.]
   ASP._Page_Modules_Orchard_MediaLibrary_Views_Parts_Document_SummaryAdmin_cshtml.Execute() in c:\inetpub\wwwroot\Modules\Orchard.MediaLibrary\Views\Parts\Document.SummaryAdmin.cshtml:5
   System.Web.WebPages.WebPageBase.ExecutePageHierarchy() +279
   System.Web.Mvc.WebViewPage.ExecutePageHierarchy() +124
   System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) +124
   System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model, ViewDataDictionary viewData) +146
   Orchard.DisplayManagement.Descriptors.ShapeTemplateStrategy.ShapeTemplateBindingStrategy.Render(ShapeDescriptor shapeDescriptor, DisplayContext displayContext, HarvestShapeInfo harvestShapeInfo, HarvestShapeHit harvestShapeHit) in z:\Builds\work\d1eb156ccc3cb14\src\Orchard\DisplayManagement\Descriptors\ShapeTemplateStrategy\ShapeTemplateBindingStrategy.cs:149
   Orchard.DisplayManagement.Descriptors.ShapeTemplateStrategy.<>c__DisplayClass28.<Discover>b__15(DisplayContext …
Run Code Online (Sandbox Code Playgroud)

orchardcms orchardcms-1.8

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

将X除以Y,返回最后一个项目,部分设置

我可能错过了一些非常简单的东西,但是我想弄清楚如何计算在将X除以Y之后剩下的东西.我不是指余数,我的意思是,例如,如果我将100除以7 => 6组15 +一组10,我怎么得到10?

我没有要显示的代码,因为我不知道从哪里开始.X和Y都是整数.

c# math

-2
推荐指数
1
解决办法
121
查看次数