相关疑难解决方法(0)

对于仿制药有什么好处,为什么要使用它们呢?

我以为我会把这个垒球提供给任何想要从公园里击出的人.什么是泛型,泛型的优点是什么,为什么,在哪里,我应该如何使用它们?请保持相当基本.谢谢.

c# generics types

80
推荐指数
10
解决办法
6万
查看次数

如何使我的字符串属性可以为空?

我想让人的中间名可选.我一直在使用C#.net代码的第一种方法.对于整数数据类型,只需使用?运算符使其可以为空即可.我正在寻找一种让我的sting变量可以为空的方法.我试图搜索但找不到让它可以为空的方法.

以下是我的代码.请建议我如何让它可以为空.

public class ChildrenInfo
{
    [Key]
    public int ChidrenID { get; set; }

    [Required]
    [Display(Name ="First Name")]
    [StringLength(50,ErrorMessage ="First Name cannot exceed more than 50 characters")]
    [RegularExpression(@"^[A-Z]+[a-z]*$",ErrorMessage ="Name cannot have special character,numbers or space")]
    [Column("FName")]
    public string CFName { get; set; }

    [Display(Name ="Middle Name")]
    [RegularExpression(@"^[A-Z]+[a-z]*$",ErrorMessage ="Middle Name cannot have special character,numbers or space")]
    [StringLength(35,ErrorMessage ="Middle Name cannot have more than 35 characters")]
    [Column("MName")]
    public string? CMName { get; set; }
}   
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework ef-migrations

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

类和数据类型有什么区别?

我听到以下声明:

我们可以说class是数据类型或数据类型是一种类.

任何人都可以向我解释这究竟是什么意思?

.net c# oop types class

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

C#中的值类型和引用类型有什么区别?

我知道一些差异,

  1. 值类型存储在堆栈中,其中引用类型存储在托管堆上.
  2. 值类型变量直接包含它们的值,其中引用变量仅包含对在托管堆上创建的对象的位置的引用.

我错过了还有其他的区别......如果是的话,他们是什么?

c# types reference

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

Array.Sort()对原始数组进行排序,而不仅仅是复制

此代码段来自C#2010 for Dummies.令我困惑的是,当使用Array.Sort()方法时,我的数组副本(sortedNames)和原始数组(行星)都会被排序,即使它只调用sortedNames上的Sort方法.

第二个foreach循环引用哪个数组无关紧要,输出是相同的.

static void Main(string[] args)
{
    Console.WriteLine("The 5 planets closest to the sun, in order: ");
    string[] planets = new string[] { "Mercury","Venus", "Earth", "Mars", "Jupiter"};
    foreach (string planet in planets)
    {
        Console.WriteLine("\t" + planet);
    }
    Console.WriteLine("\nNow listed alphabetically: ");


    string[] sortedNames = planets;
    Array.Sort(sortedNames);

    foreach (string planet in planets)
    {
        Console.WriteLine("\t" + planet);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# arrays sorting

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

EventArgs作为事件模式中的基类的目的是什么?

经典的一般C#事件具有以下参数:

(object sender, EventArgs e)
Run Code Online (Sandbox Code Playgroud)

我可以为e参数实现一个具有更具体签名的事件,派生EventArgs.

现在,基类的目的是什么EventArgs?我的意思是......它是空的.没有基础/抽象/虚拟属性,也没有字段或其他内容.

为什么基本事件的参数不像下面那样?

(object sender, object eventArgs)
Run Code Online (Sandbox Code Playgroud)

也就是说,为什么所有带有一些已实现和特定的event-args参数的事件都是EventArgs从一个简单的派生而不是从一个简单派生出来的object

上述问题与以下问题相对应.通用表单中的事件委托是:

delegate void EventHandler<TEventArgs>(object sender, TEventArgs e)
Run Code Online (Sandbox Code Playgroud)

并且对参数没有限制e.但是我会期待类似的东西where TEventArgs : EventArgs,一致......

.net c# events eventargs

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

对象类原语类型堆栈和堆

首先,如果听起来太愚蠢,我道歉.但我总是发现自己提出以下问题.

由于对象类是.Net中所有类的最终基类,而类是引用类型,引用类型存储在堆上,因此甚至可以进入堆栈.我知道原始类型存储在堆栈中,这就是我感到困惑的地方.

以int32为例,如果它的一个类及其基类是object,那么它的引用类型应该在堆上.怎么去堆叠.

如果它不是一个类,那么我们怎么能这样做

int i = 1;
object obj = i;  
Run Code Online (Sandbox Code Playgroud)

既然我做不了类似的事情

int i = 1;
MyClass myObj = i;
Run Code Online (Sandbox Code Playgroud)

编辑

从我得到的答案来看,int是结构而不是类.仍然令人困惑的是值类型的基类是如何引用类型(对象)而它的值类型不是引用类型.

另一点是"属于类的值类型不会存储在堆栈中",我想一切都在类中,甚至是控制台程序中的Main方法.对我来说,这意味着所有变量都以某种方式属于一个类?那他们怎么去堆叠?

.net c#

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

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

打破C#引用

我想知道何时以及为什么引用在C#中被破坏了?

以下代码示例突出显示了此:

StringBuilder a = null, b = null;
a = new StringBuilder("a");
b = a;
b.Append("b");
b = null;
Console.WriteLine(a != null? a.ToString() : "null");
Console.WriteLine(b != null ? b.ToString() : "null");

//Output: 
    ab
    null
Run Code Online (Sandbox Code Playgroud)

为什么,在这个例子中,是b的参考a不会导致anull呢?

c# reference

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

List <>元素是否按顺序位于堆中?

我正在学习C#,基本上知道数组和Lists 之间的区别,最后一个是通用的,可以动态增长,但我想知道:

  • List元件顺序地位于堆状阵列或位于"随机"在不同的位置的每个元素?
  • 如果这是真的,那是否会影响从内存访问和数据检索的速度?
  • 如果这是真的,这是什么使得数组比Lists 快一点?

.net c#

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