小编Spe*_*nce的帖子

EF CTP 5中没有Key属性

根据实体框架中的博客文章数据注释,应该有一个名为"Key"的列的属性,它允许您标记实体的主键.但是,我无法在.Net 3.5或.Net 4.0中找到它.

我错过了什么?我已经包含对EntityFramework.dll的引用,我已经检查了所有属性,System.ComponentModel.DataAnnotations但我无法找到它. 替代文字

我已将项目设置为.Net 4.0 full(非客户端配置文件).

有任何想法吗?

.net c# entity-framework-ctp5

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

探测剩余与加入谓词

Residual和Join谓词之间有什么区别?

如果我没有错过一个微妙,他们是完全一样的.为什么通过对同一件事使用两个不同的词来混淆新手?

sql-server

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

使用LINQ(函数式编程)将列表缩减为两个较小的列表

嘿伙计们,我正试图了解LINQ和FP,如果这是天真的话请原谅我.我正在尝试使用LINQ进行一些字符串解析并映射到一个函数,所以我需要将我的字符串拆分成更小的字符串.

我想将数组拆分为两个较小的列表.我可以使用reduce(.Aggregate())来执行此操作吗?我试图找出如何应用reduce来返回列表,但我没有运气.

我想要的是:

myString.ToCharArray().Take(2)
Run Code Online (Sandbox Code Playgroud)

映射到每一个元素.我无法绕过我的脑袋如何减少列表而不将每个元素应用于每一个元素,而不是每一个元素.

具体例子.

给定(1,2,3,4,5,6)

我想要((1,2),(3,4),(5,6))

澄清:

给出"abcdef"

我想要"ab","cd","ef"

为你们的帮助干杯.

c# linq functional-programming

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

更改XML Serializer的数组元素的元素名称

我有一个类,它是通过XSD.exe工具从XML文件生成的.我的类包含一个包含元素的数组.

直到最近,从完全实例化的业务对象渲染整个文档是可能的,但是由于大小,我们现在需要将文档数组元素呈现为流,以便我们不会耗尽内存.

但是,在呈现数组元素时,您会在XML序列化中获得不同的元素名称.我试图创建一个XMLAttributesOverride,但这给我一个错误,指出我无法覆盖此属性上的XmlElement属性.我试图保持这种强类型并与我的XSD相关联,所以如果有人知道如何将XML元素的名称更改为他们的数组名称+1回答.

.net c# xml xml-serialization

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

扩展方法不编译(类型'字符串'没有定义)

我正在尝试使用下面的代码将字节转换为KB/MB/GB,但是,我似乎无法让它工作.配额的价值是60000000000.

    public static double BytesToKilobytes(this Int32 bytes)
    {
        return bytes / 1000d;
    }

    public static double BytesToMegabytes(this Int32 bytes)
    {
        return bytes / 1000d / 1000d;
    }

    public static double BytesToGigabytes(this Int32 bytes)
    {
        return bytes / 1000d / 1000d / 1000d;
    }

    void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        if (e.Error != null)
            return;

        XDocument xDocument = XDocument.Parse(e.Result);

        listBox1.ItemsSource = from query in xDocument.Descendants("service")
                               select new Service
                               {
                                   type = query.Attribute("type").Value,
                                   id = query.Element("id").Value,
                                   plan = query.Element("username").Value,
                                   quota = query.Element("quota").Value.BytesToGigabytes, …
Run Code Online (Sandbox Code Playgroud)

c# linq itemssource

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

以编程方式发现ServiceHost的服务类型

天儿真好,

我试过在这里搜索MSDN,但我认为我不能这样做:

给定a的引用ServiceHost,是否有可能发现它正在执行的主机的类型?

就像是

ServiceHost host = new ServiceHost(typeof(MyContractImplementation));
Type serviceType = host.MagicCallHere();
Assert.True(typeof(MyContractImplementation) == serviceType);
Run Code Online (Sandbox Code Playgroud)

MagicCallHere存在吗?

奖励标记,如果你可以躲避反思...

.net c# wcf servicehost servicecontract

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

C#嵌套空检查if语句

我对编程风格和C#语言设计有一个疑问,我很想知道是否有更好的方法来做我正在做的事情.

如果你有一个复杂的数据对象,其属性可以为null,但你想检查或操作数据,如果它在那里,你不能写一个像这样的行

if(Myobject.MyNestedObject != null || Myobject.MyNestedObject.Property != null)
{
   //code
}
Run Code Online (Sandbox Code Playgroud)

因为编译器实际上会调用两行代码来评估if语句.

相反,你必须(我相信)写道:

if(Myobject.MyNestedObject != null)
{
   if(Myobject.MyNestedObject.Property != null)
   {
      //code
   }
}
Run Code Online (Sandbox Code Playgroud)

有没有比这更好的风格?我正在尝试考虑如何使用null coalesce(??)但如果你尝试在同一个语句中使用MyNestedObject的任何东西,它仍会抛出.

更多信息:

    L_01b4: ldarg.1 
    L_01b5: callvirt instance class [Myassembly]MyClass.MyObject [MyAssembly]MyClass::get_MyObject()
    L_01ba: brtrue.s L_01cc
    L_01bc: ldarg.1 
    L_01bd: callvirt instance class [MyAssembly]MyClass.MyObject [MyAssembly]MyClass::get_MyObject()
    L_01c2: callvirt instance class [MyAssembly]MyClass.MyNestedObject [MyAssembly]MyClass.MyNestedObject::get_MyNestedObject()
    L_01c7: ldnull 
    L_01c8: ceq 
    L_01ca: br.s L_01cd
    L_01cc: ldc.i4.0 
    L_01cd: stloc.2 
    L_01ce: ldloc.2 
    L_01cf: brtrue L_0285
    L_01d4: nop 
Run Code Online (Sandbox Code Playgroud)

根据我的理解,它说L_01ba如果调用返回true,不是null或非0(即如果对象为null,则不采用分支,然后控制流程线性地继续).然后,这将执行L_01c2,它将抛出空引用异常,因为Myclass.MyObject为null.

我错过了什么.这是.net 3.5 C#编译器.

c# null language-features coding-style

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

使用Javascript的交互式HTML表单

如何制作交互式HTML表单,例如:

<select name="command">
    <option value="send">Send</option>
    <option value="cancel">Cancel</option>
</select>

<!-- 
    I want the following text input hidden by default,
    but active only if option "Cancel" is selected
-->
<input type="text" name="cancel_reason" id="needreason">
Run Code Online (Sandbox Code Playgroud)

我想默认隐藏"cancel_reason"输入字段,如果之前选择了dropdown-option"Cancel",则会显示,否则它应该保持隐藏状态.

html javascript php forms jquery

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

C#WriteDirectory问题

我有一个应用程序写入C:\驱动器上的文件夹.该程序在我的计算机上工作正常,但在运行.exe时另一台笔记本电脑(另一台笔记本电脑没有可视工作室等),我得到一个filenotfoundexception,我无法从错误报告中查明出现这种情况的代码行.

这是创建目录的代码(假设这是问题)

        try
        {
            WriteDirectory = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\SMS Notifier\");
            if (!WriteDirectory.Exists)
                WriteDirectory.Create();
        }
        catch (Exception e)
        {
            throw e;
        }
Run Code Online (Sandbox Code Playgroud)

任何想法可能是什么问题?我应该检查写入权限吗?

非常感谢!

c# io

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