小编Ler*_*eri的帖子

将当前日期分配给MVC中的属性

我正在为用户创建一个模型,我希望连接的属性设置为Now().这是我的代码:

[DefaultValue(DateTime.Now)]
public DateTime joined {get; set;}
Run Code Online (Sandbox Code Playgroud)

我收到错误:

属性参数必须是属性参数类型的常量表达式,typeof表达式或数组创建表达式.

我究竟做错了什么?什么是做我想要的最好方法?

c# asp.net-mvc asp.net-mvc-3

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

生成的随机数总是相等的

我有一节课:

public class MyClass
{
    public int MyMethod()
    {
        Random rand = new Random();

        return rand.Next() % 10 + 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

它的2个对象:

MyClass obj1 = new MyClass();
MyClass obj2 = new MyClass();
Run Code Online (Sandbox Code Playgroud)

问题obj1.MyMethod() == obj2.MyMethod()始终存在.为什么会这样?什么是避免它的最佳方法?

c# random

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

扩展一个类使其成为可转换的

我想扩展一个类(Vector2),使其可以转换为Point.我怎么做?

部分问题:

  1. 扩展课程
  2. 将类转换为另一个类

最后我希望能够做到这一点:

Vector2 foo = new Vector2(5.2f);  // X = 5.2f Y = 5.2F
Point red = new Point(2,2);  // X = 2 Y = 2
red = foo;  // I know that you can make classes convert themselves automatically... somehow?
// Now red.X = 5 red.Y = 5
Run Code Online (Sandbox Code Playgroud)

c# xna

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

setter上的'System.StackOverflowException'

我有一些dto对象,我想用wcf通过线路发送.在这个简单的例子中,它有FirstName,LastName和Name.Name返回first中的firstname和lastname.

通常情况下,我不会使用清除器为Name属性,但我必须,否则它无法序列化,所以我尝试内部但我在名字设置器上收到错误

LibSys.WebServices.dll中发生了未处理的"System.StackOverflowException"类型异常

[DataMember]
public string FirstName { get; set; }

[DataMember]
public string LastName { get; set; }

[DataMember]
public string Name  {
   get { return string.Format("{0} {1}", FirstName, LastName); }
         internal set { Name = value; }
}
Run Code Online (Sandbox Code Playgroud)

c#

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

不同对象使用相同的 GetHashCode()

执行这段代码后:

int a = 50;
float b = 50.0f;
Console.WriteLine(a.GetHashCode() == b.GetHashCode());
Run Code Online (Sandbox Code Playgroud)

我们得到False,这是预期的,因为我们正在处理不同的对象,因此我们应该得到不同的哈希值。

但是,如果我们执行以下命令:

int a = 0;
float b = 0.0f;
Console.WriteLine(a.GetHashCode() == b.GetHashCode());
Run Code Online (Sandbox Code Playgroud)

我们得到True. 两个对象返回相同的哈希码:0

为什么会出现这种情况?他们不应该返回不同的哈希值吗?

.net c# hashcode

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

为什么在使用__get()赋值时属性为null?

我上了课:

class MyClass {
    function __get($name) {
        $this->{$name} = $_SESSION[$name];
    }

    public function isNull(){
        return $this->MyVar === null;
    }
}
Run Code Online (Sandbox Code Playgroud)

var_dump($obj->isNull()) //$obj is instance of MyClass始终输出bool(true)无关紧要$_SESSION['MyVar']设定与否.但如果我按照预期添加$this->MyVar;之前return $this->MyVar === null;.

好吧,它似乎__get()已执行(因为$MyVar未设置,因此它无法访问)但属性在第二次使用之前保持为NULL.

它会发生,因为它根本没有设置?如何避免使用额外的line($this->MyVar;)?

php

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

为什么我不能显式地将一些数据类型(如string,int,byte,float等)转换为?C#

我知道,当它被允许施放时,不可能施放stringbool喜欢(int)MyString (short)MyBool等等.intshort

不幸的是我找不到解释,为什么.所以我在这里问.

为什么不允许显式转换某些数据类型(我不是问如何将字符串转换为其他类型或类似的东西)?

c# casting

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

排序关联数组codeigniter php

这是我想要做的:

$newArray = array();

foreach($student as $s){
    $newArray[$s->id][$s->grade] = $s;
}
Run Code Online (Sandbox Code Playgroud)

我想按照他们的成绩对学生进行排序(更多的是一组而不是一种类型),但我只想要将成绩分类而不是id.我可以不这样做:

$newArray[$s->id] = $s->grade 
asort($newArray)
Run Code Online (Sandbox Code Playgroud)

但是我需要剩下的数据$s.此外,我希望维护每个学生的大量数据.

我怎样才能实现这样的排序?

php arrays sorting codeigniter

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

如何使用php将值写入表单的输入类型=文件

我能够将值写入输入t表单type = text

对于前

 <input type="text" value="xyz">
Run Code Online (Sandbox Code Playgroud)

但我想要的是,将值写入input type ="file".我已经尝试了下面的代码,但它不起作用.

 <input type="file" value="something">
Run Code Online (Sandbox Code Playgroud)

html

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

除了方法,只为一个实例提供了错误的答案

我通过这个命令创建一个列表

var terminalList = sourceLists.Where(t => t.TagNo == tagList)
                              .Where(t => t.FromTerminal.Length > 0)
                              .Select(t => parseTerminal(t.FromTerminal))
                              .OrderBy(t => t).ToList();
Run Code Online (Sandbox Code Playgroud)

它适用于Tagno除了创建这样的列表之外的每一个

terminalList={33,35}
Run Code Online (Sandbox Code Playgroud)

当我使用此命令时

var result = Enumerable.Range(terminalList.Min(), terminalList.Max())
                       .Except(terminalList)
                       .ToList();
Run Code Online (Sandbox Code Playgroud)

我检查了一下.terminalList.Min()将是33并且terminalList.Max()将是35.并且在这种情况下terminalList有2个项目.

我得到了这个答案:

result = {34,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67}
Run Code Online (Sandbox Code Playgroud)

这是错误的正确答案{34}.

我该如何追踪问题?

c# linq

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

标签 统计

c# ×7

php ×2

.net ×1

arrays ×1

asp.net-mvc ×1

asp.net-mvc-3 ×1

casting ×1

codeigniter ×1

hashcode ×1

html ×1

linq ×1

random ×1

sorting ×1

xna ×1