小编Dmi*_*nko的帖子

使用Entity Framework将int timestamp转换为DateTime

我有一个数据库,其中列是int数据类型.列int值对应于自1980-01-01以来的秒数(MS-DOS时间戳).

是否可以使用Entity Framework转换这些int值?如果不是那样做呢?转换需要高效.

我在我的控制器中尝试了以下SQL,但是我从客户端收到了一个JSON错误(Fiddler输出:JSON = -1):

public JsonResult GetData()
{
     var model = entities.Database.ExecuteSqlCommand(
        @"SELECT TOP 10 
                 dateadd(S, [timestamp], '1980-01-01') [datetime_conv], 
                 [value] 
            FROM [Data_2696415_20] AS tabel");

     return Json(model, JsonRequestBehavior.AllowGet);
 }
Run Code Online (Sandbox Code Playgroud)

我正在使用Entity Framework 6.1版.

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

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

SQL case 0然后是NULL

当我的表中的数字为0时,我想得到NULL.我可以使用SQL实现这一点吗?

SELECT ID, 
       Firstname, 
       Lastname, 
       CASE Number 
         WHEN 0 THEN NULL 
       END
  FROM tPerson
Run Code Online (Sandbox Code Playgroud)

错误:

CASE规范中的至少一个结果表达式必须是NULL常量以外的表达式.

提前致谢!

sql case

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

Linq C中datatable.Rows.Cast <DataRow>和datatable.AsEnumerable()之间的区别#

我正在研究与数据相关的数据表相关操作,在数据表上使用linq的最有效方法是什么 -

var list = dataSet.Tables[0]
  .AsEnumerable()
  .Where(p => p.Field<String>("EmployeeName") == "Jams");
Run Code Online (Sandbox Code Playgroud)

要么

var listobj =  (EnumerableRowCollection<DataRow>) dataSet.Tables[0].Rows
  .Cast<DataRow>()
  .Where(dr => dr["EmployeeName"].ToString() == "Jams");
Run Code Online (Sandbox Code Playgroud)

c# linq

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

C#方法:是否有一个参数名称一般插入'派生类名'?

我想StudentchangeName它内部的方法创建一个基类.我想studentclasses从基类派生Student,比如collegestudent等.我希望能够改变学生的名字.

我有这个代码:

public abstract class Student
{
    public virtual void changeName(CollegeStudent s, string name)
    {
       s.firstName = name;
    }

    public abstract void outputDetails();
}

public class CollegeStudent : Student
{
    public string firstName;
    public string lastName;
    public string major;
    public double GPA;

    public override void outputDetails()
    {
        Console.WriteLine("Student " + firstName + ");
    }
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以将public virtual void changeName参数更改为接受Student的任何派生类的泛型参数.

这可能在c#中吗?

(像这样:public virtual void changeName(Anyderivedclass s,string name)

c#

5
推荐指数
2
解决办法
111
查看次数

使用LINQ打印数组

我得到了以下代码,我试图打印teenAgerStudents没有我在LINQ线后做的foreach.我可以在LINQ系列中添加打印件吗?我可以使用另一条新的LINQ线打印而不是foreach吗?

class Student
{
    public int StudentID { get; set; }
    public string StudentName { get; set; }
    public int Age { get; set; }
}
class Program
{
    static void Main(string[] args)
    {
        Student[] studentArray = {
                new Student() { StudentID = 1, StudentName = "John", Age = 18 } ,
                new Student() { StudentID = 2, StudentName = "Steve",  Age = 21 } ,
                new Student() { StudentID = 3, StudentName = "Bill",  Age = 25 …
Run Code Online (Sandbox Code Playgroud)

c# linq

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

如何将负字符串转换为十进制值?

我试图将负字符串转换为"-23.27"小数点值,而问题有时候我会在括号内得到负值"(23.27)".

我已经编写了控制括号的代码并以负格式获取小数点值,但是当"-23.27"它运行相同的代码时,它返回的输入字符串格式不正确错误.这是我的代码.任何帮助,将不胜感激.

decimal ValueN = (decimal.Parse("-23.27", 
                  System.Globalization.NumberStyles.AllowParentheses | 
                  System.Globalization.NumberStyles.AllowLeadingWhite | 
                  System.Globalization.NumberStyles.AllowTrailingWhite | 
                  System.Globalization.NumberStyles.AllowThousands));
Run Code Online (Sandbox Code Playgroud)

c#

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

将数字转换为特定于文化的

我有一个像 202667.4. 我想根据文化将其转换为数字。

例如:

在“de”(德语)中,数字应为202.667,40

任何帮助将不胜感激。

谢谢。

c# culture localization cultureinfo number-formatting

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

没有两个元素相邻的最大和

现在可用的解决方案是每个地方都有一个includeexclude sum 。在max这两个结束时会给我输出。

现在最初我很难理解这个算法,我想为什么不以简单的方式进行。

算法:通过一次增加两个数组指针来循环数组

  1. 计算数组中的奇数定位元素sum
  2. 计算偶数定位元素sum

最后,拿max这两个sum

那样的话,我认为复杂度会减半 O(n/2)

这个算法正确吗?

arrays algorithm data-structures

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

C#在字符串中的每个数字序列后添加逗号

我有很多数字字符串.我需要重新格式化字符串以在所有数字序列后添加逗号.数字有时可能包含其他字符,包括12-3或12/4,例如

  • "你好1234再见"应该是" 你好1234,再见 "
  • "987中间文本654"应为" 987,中间文本654 ",
  • "1/2是包含其他字符的数字"应为" 1/2,是包含其他字符的数字 "
  • "这也12-3有数字"应该是" 这也是12-3,有数字 "

谢谢你们

编辑: 我的例子没有考虑任何特殊字符.我最初没有把它包括在内,因为我认为如果有人能更有效地做到这一点,我会得到一个全新的视角 - 我的坏!

    private static string CommaAfterNumbers(string input)
    {
        string output = null;

        string[] splitBySpace = Regex.Split(input, " ");
        foreach (string value in splitBySpace)
        {
            if (!string.IsNullOrEmpty(value))
            {
                if (int.TryParse(value, out int parsed))
                {
                    output += $"{parsed},";
                }
                else
                {
                    output += $"{value} ";
                }
            }
        }
        return output;
    }
Run Code Online (Sandbox Code Playgroud)

c# string

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

如何计算 IEnumerable 的项目数?

给定一个实例,IEnumerable o我如何获取项目Count?(无需枚举所有项目

例如,如果实例是ICollectionICollection<T>IReadOnlyCollection<T>,则每个接口都有自己的Count方法。

Count通过反射获取属性是唯一的方法吗?

相反,我可以检查并转换oICollection<T>例如,以便我可以调用吗Count

c#

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