小编v00*_*d00的帖子

属性选择器Expression <Func <T >>.如何获取/设置所选属性的值

我有一个对象,我想以这种方式构造:

var foo = new FancyObject(customer, c=>c.Email); //customer has Email property
Run Code Online (Sandbox Code Playgroud)

我该如何申报第二个参数?

访问所选属性setter/getter的代码如何?

UPD.模型中有多个实体具有Email属性.所以签名可能看起来像:

public FancyObject(Entity holder, Expression<Func<T>> selector)
Run Code Online (Sandbox Code Playgroud)

和构造函数调用

var foo = new FancyObject(customer, ()=>customer.Email);
Run Code Online (Sandbox Code Playgroud)

c#

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

varchar值如何存储在SQL Server数据库中?

我的同事程序员对他的团队领导有一个奇怪的要求; 他坚持要创建varchar长度为16*2 n的列.

这种限制有什么意义?

我可以假设短字符串(例如少于128个字符)直接存储在表的记录中,从这个角度来看限制将有助于对齐记录中的字段,较大的字符串存储在数据库"堆"中并且只有对该字符串的引用保存在表记录中.

是这样吗?

这个要求是否有合理的背景?

顺便说一句,DBMS是SQL Server 2008.

database sql-server database-design sql-server-2008 sqldatatypes

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

用于自动INotifyPropertyChanged实现的Resharper模板

是否可以编写代码模板或代码片段,它将执行以下操作:

我有一个声明如下的属性:

public string String1 {get;set;}
Run Code Online (Sandbox Code Playgroud)

我希望reshaprer自动生成以下内容:

private string _string1;
public string String1
{
    get
    {
        return _string1;
    }

    set
    {

        if (_string1 != value)
        {
            _string1 = value;
            RaisePropertyChanged(() => String1);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

刚刚阅读了http://koder.wordpress.com/2010/03/25/resharper-inotifypropertychanged/文章,并创建了新的实时模板,可以为我想要的新属性插入代码.

是否可以以这种方式设置此模板,它可以出现在Alt + Enter菜单中,就像光标在属性声明上的建议一样

喜欢:

{Access modifiers} **{Type} {Name}** {Possible get;set; statements}
Run Code Online (Sandbox Code Playgroud)

c# resharper inotifypropertychanged

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

SQL Server CE 4 DataProvider在服务器资源管理器中不可用

我已经为visual studio 2010安装了sp1并安装了sql server ce 4 runtime.但仍然无法使用标准数据提供程序创建与sql ce数据库的连接.

这就是我的Select DataProvider Dialog现在的样子. 更改数据源对话框

PS不知道它是否重要,但我已经使用控制台应用程序和winforms应用程序测试了这两个目标.Net 4.0

c# visual-studio-2010 dataprovider sql-server-ce

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

如何顺序执行异步操作?

现在我正在使用类似于这种结构的东西

A.Completed += () =>
{ B.Completed += () =>
  {  C.Completed += () =>
     {
       //
     }
     C();
   }
   B();
 }  
 A();
Run Code Online (Sandbox Code Playgroud)

并不是很满意.是否有更好,更清洁的方式来执行此类后续/并发操作执行?

我看看Rx框架,但它是为其他任务设计的,看起来像我的问题有点过分.

c# silverlight

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

用于EF 4实体模型的DTO Generator

是否可以编写t4模板(或者如果它已经存在),它将能够根据*.edmx文件中的数据生成DTO类?

我必须为当前项目编写DTO类,这个过程有点令人讨厌.

我想要获得的是获得DTO类,它将标量属性定义为简单的自动属性,导航参数作为其他DTO类的封装实例.

示例:

public class SomeClassDTO
{
    public byte Id { get; set; }

    public string Description { get; set; }        

    public OtherClassDTO SomeProperty {get;set;}

    public IList<AnotherClassDTO> Objects {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

这是一个很好的起点,更令人满意的可能是以下示例:

/// <summary>
/// Employee details DTO.
/// </summary>
public class EmployeeDetailsDTO
{
    [Key] 
    public long Id { get; set; }

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

    [Required]
    public string Surname { get; set; }

    ...

    public long? PhotoId { get; set; }

    // Home address properties. …
Run Code Online (Sandbox Code Playgroud)

c# t4 code-generation dto visual-studio

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

实体框架中是否存在NHibernate.ToFuture()扩展方法的模拟?

所以问题在于标题.

NHibernate用户可以做什么:

var q1 = Source.Companies.ToFuture();
var q2 = Source.Items.ToFuture();
var q3 = Source.Users.ToFuture();

var compoundModel = new CompoundModel(q1, q2, q3); 
// All data obtained in single database roundtrip 
// When the first to future statement is touched
Run Code Online (Sandbox Code Playgroud)

如何在EF 4中模仿这种行为?

c# nhibernate entity-framework

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

应该如何访问数据.工作实践

我是新手C#开发者.当我刚开始学习编程时,很简单,你会看到问题,你开发解决方案,测试它并且它工作,这很简单.

然后你会发现设计模式和整个抽象的东西,你开始花更多的时间在没有结果的代码上,总是很累,以保护代码在将来不会发生变化.更多时间减少结果.

对于枯燥的介绍感到抱歉,但我只想表明我现在有多沮丧.微软自己提供了大量的数据访问技术,甚至还有第三方公司提供的大量技术.

我没有团队领导或邻居超级熟练的程序员朋友,所以我不得不向你征求意见.

您如何实现用C#编写的实际应用程序中的数据访问?

c# database visual-studio

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

如何使用EnvDTE在visual studio中添加文件链接

我正在为我们的项目编写一个自定义脚手架.此脚手架应添加指向客户端应用程序的DTO声明的链接.

我有可能检索项目项的实例,

$folder = Get-ProjectFolder "Views\Shared" 
Run Code Online (Sandbox Code Playgroud)

我已经发现可以使用ProjectNode.AddNewFileNodeToHierarchy(string,string)方法添加链接.

我只需访问$DTEPowerConsole中预定义的变量即可获得对DTE服务的引用.

问题是如何获取我感兴趣的ProjectNode实例?

c# visual-studio-2010 visual-studio asp.net-mvc-scaffolding

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

node.js服务器,socket.io处理50000个并发客户端

我们正在开发一个Javascript控件,它应该不断连接​​到服务器以接收动画更新.

我们计划在亚马逊云上托管这些东西.

场景是这样的:服务器连接到等待更新的activemq队列,对于每次更新,它将它广播到所有连接的客户端.

甚至可以用node.js + socket.io来处理这样的负载吗?单个node.js服务器是否能够处理这样的负载?如果我们必须使用多个节点,如何组织不同节点之间的快速传输?

node.js socket.io cpu-load

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