小编Mat*_*att的帖子

C#3中的自动属性 ​​- 如果我为set声明一个,则必须声明一个get的主体?

我正在使用VS 2008,在项目的属性页面中,我看到我的目标是.Net 3.5.

这是我在尝试编译时遇到的错误:

AMSDataModels.Vehicle.VIN.get'必须声明一个主体,因为它没有标记为abstract,extern或partial

以下是代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AMSDataModels
{
    public class Vehicle
    {
        //NodeID for datastore persistance
        public Guid NodeID { get; set; }

        public string VIN { get; 
            set { 
                if (value.Length != 17) throw new ArgumentOutOfRangeException("VIN", "VIN must be 17 characters"); 
            } }

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

如果我从身体上剥离身体,那么它只是:

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

一切正常,但我失去了检查VIN的能力.

有没有人建议如何解决这个或更好的方法来解决手头的问题?

我非常喜欢速记符号 …

c# .net-3.5

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

Lucene中的文档是否必须包含相同的字段?

我正在考虑/正在为我们公司的各种内容类型实施搜索引擎,并试图将我的头围绕Lucene(特别是.net风格).

目前,我的主要问题是一个索引的文档是否必须包含相同的字段.

例如:

文档1:

  • 标题:"我是一份文件,宝贝"
  • 身体:"这是一些重要的事情"
  • 纬度:26.12224
  • 经度:-65.23124
  • 品牌:东芝

书2:

  • 标题:"我的另一份文件"
  • 身体:"Lorem ipsum和所有那些爵士乐"
  • 类别:文章
  • 作者:莱恩爵士

......等等

lucene lucene.net

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

带有进度跟踪的C#HttpWebRequest表单帖子(用于上传可能存在的大文件)

我有一个winforms应用程序,我写的是将文件发布到Web应用程序(不是我的).就发布文件本身来说,我的工作做得很好,我的问题是我想提供一些指示,告诉我发送请求的程度.

下面的代码是我尝试使用BeginGetResponse来实现这一目标 - 这就是我发现请求仍然阻塞的地方.

关于我可以从哪里开始看的任何建议?

    public void Dummy()
    {
        Dictionary<string, string> fields = new Dictionary<string, string>();
        fields.Add("key", "something");

        HttpWebRequest hr = WebRequest.Create("http://somesite.com/api/something.xml") as HttpWebRequest;
        string bound = "----------------------------" + DateTime.Now.Ticks.ToString("x");
        hr.ContentType = "multipart/form-data; boundary=" + bound;
        hr.Method = "POST";
        hr.KeepAlive = true;
        hr.Credentials = CredentialCache.DefaultCredentials;

        byte[] boundBytes = Encoding.ASCII.GetBytes("\r\n--" + bound + "\r\n");
        string formDataTemplate = "\r\n--" + bound + "\r\nContent-Disposition: form-data; name=\"{0}\";\r\n\r\n{1}";

        Stream s = hr.GetRequestStream();

        foreach (string key in fields.Keys)
        {
            byte[] formItemBytes = Encoding.UTF8.GetBytes(
                string.Format(formDataTemplate, …
Run Code Online (Sandbox Code Playgroud)

.net c# post httpwebrequest winforms

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

需要使用win32 api来复制c#中的文件 - 我该怎么做?

我正在尝试复制一些文件,偶尔名称的长度超过System.IO.File.Copy方法可以接受的长度(260个字符根据被抛出的异常)

根据我所做的研究,我应该能够将win32 api的文件方法与\?\ prepended to path一起使用以获得32,000个字符的限制,但我不确定我需要导入的方法.

有人可以帮我弄这个吗?我正在寻找类似的东西(显然是一个不同的功能,但你明白了):

[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
    static extern SafeFileHandle CreateFileW(string lpFileName, uint dwDesiredAccess,
                                          uint dwShareMode, IntPtr lpSecurityAttributes, uint dwCreationDisposition,
                                          uint dwFlagsAndAttributes, IntPtr hTemplateFile);
Run Code Online (Sandbox Code Playgroud)

.net c# winapi

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

标签 统计

c# ×3

.net ×2

.net-3.5 ×1

httpwebrequest ×1

lucene ×1

lucene.net ×1

post ×1

winapi ×1

winforms ×1