小编t_p*_*lus的帖子

EntityFramework未使用默认值更新列

我通过EntityFramework 4(EF)将对象插入SQL Server数据库.在接收表上有一列(CreatedDate),其默认值设置为getdate().所以我没有把它提供给EF,假设它的值将被SQL Server默认为getdate().

然而,这不会发生; 而EF返回验证错误n SaveChanges().

您知道这件事有什么原因吗?请告诉我.

非常感谢.

c# sql sql-server entity-framework

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

代码优先实体框架 - 同一个表的多个外键

我有一张Holiday桌子和一张User桌子.

Holiday表具有列RequesterIDAuthorisedByID,其中两个链接的主键User表.

这是我的Holiday模特:

public class Holiday
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public Guid HolidayId { get; set; }

    [ForeignKey("UserId")]
    public virtual User User { get; set; }
    public Guid RequesterId { get; set; }

    public Guid? AuthorisedById { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我无法AuthorisedByID在User表中声明为外键,就像我认为我对RequesterId列一样.

我想知道你是否可以给我一些如何解决的提示.

谢谢.

entity-framework ef-code-first ef-migrations

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

将对象转换为DateTime

如何转换这种格式的字符串日期值:

Wed Oct 02 2013 00:00:00 GMT+0100 (GMT Daylight Time)
Run Code Online (Sandbox Code Playgroud)

到格式的日期02/10/2013.

我已经尝试了DateTime.ParseExact但它根本不起作用:

DateTime.ParseExact(dateToConvert, "ddd MMM d yyyy HH:mm:ss GMTzzzzz",    CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

c#

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

ASP.NET MVC:从一个视图重定向到另一个视图

您好我使用以下代码从kendo网格重定向到另一个页面(查看):

@(Html.Kendo().Grid<WM.ViewModels.StockReceiptsGridViewModel>()
    .Name("Grid")
    .ToolBar(toolbar => toolbar.Template("<a class='k-button k-button-icontext' onclick='addMaterialPopup()' href='#'></span>Create Stock Receipt</a>"))
    .Columns(columns =>
    {
        columns.Bound(p => p.StockReceiptID);
        columns.Bound(p => p.SupplierName);
        columns.Bound(p => p.Product);
        columns.Bound(p => p.Dimensions);
        columns.Bound(p => p.Quantity);
        columns.Bound(p => p.QuantityReserved);
        columns.Bound(p => p.PurchaseNumber);
        columns.Bound(p => p.Cost);
        columns.Bound(p => p.PhotosLink).Title("").ClientTemplate("<a href='/Photos/index?StockReceiptID=#=StockReceiptID#'>#=GetText()#</a>");
        columns.Command(command => command.Custom("Edit").Click("editreceipt"));

    })
    .DataSource(dataSource => dataSource
        .Ajax()
        .Batch(false)
        .Model(model => model.Id(p => p.StockReceiptID))
                    .Read(read => read.Action("Read", "StockReceiptsGrid").Data("ExtraData"))
  )
)
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

function editreceipt(e) {
    e.preventDefault();
    var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
    var stockReceiptId = dataItem.StockReceiptID;

    window.location.href = "@Url.Action("Update","StockReceipt")"+"/"+stockReceiptId; // …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 url-redirection kendo-grid

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

C#:将数组元素相互相乘

我希望能够将给定数值数组的所有成员相互相乘.

所以例如对于像这样的数组:[1,2,3,4]我想得到的产品1*2*3*4.

我试过这个但是没有用:

/// <summary>
/// Multiplies numbers and returns the product as rounded to the nearest 2 decimal places.
/// </summary>
/// <param name="decimals"></param>
/// <returns></returns>
public static decimal MultiplyDecimals(params decimal[] decimals)
{
   decimal product = 0;

   foreach (var @decimal in decimals)
   {
       product *= @decimal;
   }

   decimal roundProduct = Math.Round(product, 2);
   return roundProduct;
}
Run Code Online (Sandbox Code Playgroud)

对不起,我知道这一定很简单!

谢谢.

c# c#-4.0

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

在具有返回值的函数中使用out参数

我有一个像这样的功能:

public string MyFunction(int a, out int b)
{
   var test = ""
   b = 6;
   return test;
}
Run Code Online (Sandbox Code Playgroud)

然后在接收端:

int b = 0;
var testOutcome = MyFunction(3, b);
Run Code Online (Sandbox Code Playgroud)

我想知道如何在这种情况下获得:b的值?

就像是:

var bOutcome = ....; 
Run Code Online (Sandbox Code Playgroud)

c#

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

在JQuery或JavaScript中的Grid标头上生成onClick事件

我有这个KendoUI网格,我想在其标题行中添加一个click事件,并获取单击的单元格的文本值:

@(Html.Kendo()
      .Grid<Timeshet.Web.Models.UserWeekModel>()
      .Name("grid")
      .Sortable(sortable => sortable.AllowUnsort(false))
      .Columns(columns =>
      {
              columns.Bound(t => t.Name);//.ClientTemplate("#=Name#" + " " + "<div class='jobDescriptionInfo-img' onclick='showDescription()' title='Job Description' >&nbsp;</div>");
              columns.Bound(t => t.JobDescription).Visible(false);
              columns.Bound(t => t.LastFri).ClientTemplate("#=LastFri#").HtmlAttributes(new { @class = "last-week" }).Hidden().Sortable(false);
              columns.Bound(t => t.Monday).ClientTemplate("#if (Monday.HasNotes) {#" + "#=Monday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Monday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Monday.Style#" });
              columns.Bound(t => t.Tuesday).ClientTemplate("#if (Tuesday.HasNotes) {#" + "#=Tuesday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + …
Run Code Online (Sandbox Code Playgroud)

javascript jquery kendo-ui kendo-grid kendo-asp.net-mvc

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

Jquery find:Uncaught TypeError:row.find不是函数

我有这张桌子:

<tbody class="schoolsRows">
    <tr>
        <td width="50%">
            <input type="text" class="classA schoolNameClass valid" id="1">
        </td>
        <td width="25%">
            <input type="text" class="classA postCodeClass valid" id="2">
        </td>
        <td width="25%">
            <input type="text" class="classA urnClass valid" id="3">
        </td>
        <td>
            <input type="button" value="Clear Content" onclick="clearRowContent(this)">
        </td>
    </tr>
</tbody>
Run Code Online (Sandbox Code Playgroud)

点击按钮,我试图访问每个文本框并清除它.

这是我的javascript代码:

function clearRowContent(e) {
    var row = e.closest('tr');
    var textBoxToClear = row.find('.schoolNameClass');
}
Run Code Online (Sandbox Code Playgroud)

我可以到达行,但问题是当我尝试通过使用find或兄弟姐妹到达文本框时出现此错误

未捕获的TypeError:row.find不是函数

我想知道为什么会这样.

javascript jquery

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

TSQL中的日期比较

为什么以下每个都返回记录:

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate < '20151214'

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate > '20151214'
Run Code Online (Sandbox Code Playgroud)

虽然以下查询没有?

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate = '20151214'
Run Code Online (Sandbox Code Playgroud)

我必须使用CAST带有相等运算符的a来获得我想要的结果:

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CAST(CreatedDate as DATE) = '2015-12-14'
Run Code Online (Sandbox Code Playgroud)

有没有办法使用相等运算符而不必使用强制转换?

CreatedDate是类型DATETIME,包括时间.

sql sql-server sqldatetime sql-server-2012

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