在c#中创建的对象存储在哪里?
假设我创建了一个对象在c#中创建的对象存储在哪里?,c#,asp.net,C#,Asp.net,假设我创建了一个对象 public UserDetails GetUserDetail(){ UserDetails user=new UserDetails(); user.Name=someFunctionThatReturnsName(); user.BankAccountNumber=someInternalFunctionThatReturnsAccountNumberFromDB(); return user; } 当我在代码隐藏文件中创建这个对象时
public UserDetails GetUserDetail(){
UserDetails user=new UserDetails();
user.Name=someFunctionThatReturnsName();
user.BankAccountNumber=someInternalFunctionThatReturnsAccountNumberFromDB();
return user;
}
当我在代码隐藏文件中创建这个对象时,这些对象究竟存储在哪里?
它们是否存储在客户端?如果是,我可以修改这些值吗?
比如说,如果Facebook将登录用户的详细信息存储在一个对象中,我可以使用控制台或客户端中的其他东西来修改它吗
当100人同时访问一个web应用程序时,如何处理这个问题?
如何创建和适当返回对象
因此,每当我创建/访问对象时,我都会点击服务器?它们存储在服务器的内存中。简单来说,服务器上的工作线程分配内存。当100人访问站点时,内存中会分配100个对象。一旦这些对象超出范围,它们就会死亡(或者至少它们是垃圾收集的)。有很多操作系统的可能性。在您提供的示例中,对象存储在服务器端内存中。对于每个单独的用户,在实时请求期间将存储一个对象 如果您声明,它将存储在服务器端内存中,但在appDomain上,我的意思是,一个实例将与网站上的所有用户共享 ASP.NET对象 在asp.net中,还可以将对象存储在中,以及来自asp.net平台的其他对象。我建议你阅读更多关于它们的内容,并根据需要使用它们 根据上下文的不同,您可以存储自定义对象的通用字典,并在单个引用上使用它 值类型与引用类型 我想补充一点,重要的是你要了解一些东西,它们是如何存储的,它们是如何工作的,以及你应该如何保养你的物品。基本上:
- 引用类型-在堆上
- 值类型-在堆栈内存上