小编Car*_*ras的帖子

为什么我的测试项目没有出现在测试资源管理器上

我正在使用VS2012(v110)我创建了一个简单的dll应用程序,只有一个函数和一个测试项目来测试dll函数.我将这两个项目设置为win32的调试版本,并尝试清理并重建两个项目但我没有看到任何测试要在测试资源管理器窗口上运行.

我也已经在测试项目中引用了Dll项目.

为什么测试资源管理器窗口中没有显示任何内容?

c# c++ vb.net unit-testing visual-studio-2012

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

WebApi POST 不包含 ID 字段

我对 ASP.NET 和 WebAPI 框架的了解还只有几天,所以我一定错过了一些非常简单的东西。

我有一个模型,它有几个属性和 ID(作为一个属性,它有一个私有的 setter 但没有帮助)。

public long ID { get; private set; }

[Required(ErrorMessage = "Location coordinate X is required.")]
public double X { get; set; }

[Required(ErrorMessage = "Location coordinate Y is required.")]
public double Y { get; set; }
Run Code Online (Sandbox Code Playgroud)

然后我有一个控制器方法帖子:

public HttpResponseMessage Post(MyModel model)
Run Code Online (Sandbox Code Playgroud)

当我启动项目并转到自动生成的 API 文档时,我可以看到示例包含 ID 作为输入字段。我希望 API 忽略 ID 输入字段。我可以自己忽略它,但我不喜欢在我的代码中使用这种必须记住不使用的东西。

一种选择是为输入创建一个单独的模型,但这意味着我必须维护两个类而不是一个。

是否有任何数据注释可以完全忽略此属性?

c# data-annotations asp.net-web-api

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

使用DataTable和List <T>加入和分组

我正在尝试执行以下linq操作.这里表示为SQL:

SELECT 
    CAMPAIGN,
    ADGROUPID,
    CLICKS,
    TOTALCONV,
    COST,
    COSTCONVCLICK,
    KEYWORD,
    COUNT(*) AS APARICIONES
FROM 
    ADWORDSSEARCH
GROUP BY CAMPAIGN,adgrOUPID,CLICKS,TOTALCONV,COST,COSTCONVCLICK,KEYWORD
ORDER BY CLICKS DESC
Run Code Online (Sandbox Code Playgroud)

我使用以下linq表达式:

var filtro =(from r in newTable.AsEnumerable()
             group r by new { 
                                camp=r.Field<string>("CAMPAIGN"), 
                                keyw= r.Field<string>("KEYWORD")
                            }
             into grouping
             select new
             {
                 grouping.Key.camp,
                 grouping.Key.keyw,
                 Key = grouping.Key,
                 NumberGroup = grouping.Count()
             }).ToList()
               .OrderByDescending(t=>t.NumberGroup);
Run Code Online (Sandbox Code Playgroud)

但问题是newTable是一个Datatable,它有一个名为AdGroupID的数字字段,我需要与List进行连接,用它的描述替换AdGroupID的数字ID.这是我到目前为止所尝试的:

var filtro = from r in newTable.AsEnumerable()
             join anuncios in adslist.AsEnumerable() 
             on r.Field<string>("ADGROUPSID") equals anuncios.id.toString() 
             into grouping
             select new
             {
                 Campaign = r.Field<string>("CAMPAIGN"),
                 AdsName = anuncios.name ???? …
Run Code Online (Sandbox Code Playgroud)

c# sql linq

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

Mvc UserControl使用HtmlHelper与HelperResult和MvcHtmlString

我正在使用asp mvc开发一个应用程序,我想为开发人员创建一些友好的控件,比如asp.net WebForms中的Server控件.在这种情况下,我想创建一个具有一些固定html并在项目模板内渲染的引导面板.我是这样做的:

public static MvcHtmlString BootPanel<T>(this IEnumerable<T> items, Func<T, HelperResult> template, string title = "")
    {

     StringBuilder sb = new StringBuilder();
     sb.Append("<div class='panel panel-info'>");
     sb.Append("<div class='panel-heading'>");
     sb.Append(title);
     sb.Append("</div>");
     sb.Append("<div class='panel-body'>");

     var hr = new HelperResult(writer =>
              {
                 foreach (var item in items)
                {
                  template(item).WriteTo(writer);
                }
       });

      sb.Append(hr.ToHtmlString());
      sb.Append("</div>");
      sb.Append("</div>");
      return MvcHtmlString.Create(sb.ToString());
    }
Run Code Online (Sandbox Code Playgroud)

这是剃须刀视图:

@{
  var videoGames = new[] {
      new VideoGame {nombre = "Shadows of mordor", precio = 66},
      new VideoGame {nombre = "Spiderman", precio = 50}
      };
   } …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net-mvc html-helper

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

使用Array.Foreach和lambda表达式修改数组

我正在尝试修改数组的值,但它不会被修改:

string buzones = File.ReadAllText("c:\\Buzones");
string[] buzoneslist = buzones.Split(',');

Array.ForEach(buzoneslist, x =>
{
    x = x.Replace(",", "");
});
Run Code Online (Sandbox Code Playgroud)

这就像我在做一个string.Replace而没有将结果值设置为变量:

s.replace(",", ""); 代替 s=s.replace(",", "");

是否有可能在lambda表达式中完成?

c# arrays foreach lambda

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

使用LINQ查询时,类具有无效的表达式术语"from"

我有以下可序列化的类:

[Serializable]
public class EmailClass
{
    public string from;
    public List<string> To;
    public List<string> CC;
    public string DisplayTo;
    public string Subject { get; set; }
    public int attachments;      
    public List<string> attachmentsName;
    public string DateTimeReceived;
    public string DateTimeSent;
    public string FinalFilename;
    public string DatetimeCreated;
    public string ExchangeUniqueId;
    public string ChankeyID;
    public string  FinalFileName {get;set;}
    public bool Encrypted;
    public string Descripcion { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

所以知道,我有一个List,我想使用Linq查询它:

 var query = from p in listado 
             where p.from.ToString().ToUpper() == textBox1.Text
Run Code Online (Sandbox Code Playgroud)

问题是它p.from 从标识符中识别为linq,因此不被接受. …

c# linq serialization

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

简而言之,C#误解了++一元运算符增量

我简单地阅读C#5.0,我有以下声明:

int x = 0;

while (true)
{
    if (x++ > 5)
        break ;      // break from the loop
}
x.Dump();
Run Code Online (Sandbox Code Playgroud)

在LINQPad 4上执行语句,输出为7.

我还是不明白为什么?为什么它不是条件:x ++> 5

c# loops while-loop

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

在ASP.NET中将文件从Web服务传递到客户端

我需要将通过Web服务获得的文件传递给最终用户.现在,我分两步完成:

  1. 从安全的Web服务获取文件:

    Dim client As New Net.WebClient client.Headers.Add("Authorization",String.Format("Bearer {0}",access_token))

    昏暗数据As Byte()= client.DownloadData(uri)

  2. 通过http响应将文件提供给用户.

这对最终用户来说需要很长时间,因为用户必须等待服务器从服务下载文件,然后客户端从服务器下载文件.

是否可以将文件直接从Web服务流式传输给用户?如果是这样,最好的方法是什么?

.net c# vb.net asp.net

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

如何创建具有泛型类型参数的对象列表

我有一个带有类型参数的对象 - 调用它Object<T>- 并且需要能够将多个具有不同类型参数的对象添加到列表中,如下所示:

var obj1 = new Object<SomeType>();
var obj2 = new Object<SomeOtherType>();

var list = new List<Object<WhatGoesHere>{ obj1, obj2 };
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用一个接口,如果它只是不同对象的列表,但这似乎不适用于具有不同类型参数的对象列表,所以我有兴趣知道我的选项是什么?

c# oop

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

C#中的随机数生成器问题

很久以后,我设法让我的问题来自于我在第一个问题中询问的程序.它将一个随机数添加到列表中以用作ID号,然后将其导出到Excel.但是当我在我的数据文件中使用2个以上的数据成员时,我遇到了一个问题:我生成的随机数加倍,导致我的程序崩溃.

static Dictionary<string,Backup> getData()
{

    Dictionary<string, Backup> bDict = new Dictionary<string, Backup>();
    StreamReader reader = new StreamReader("/data/storedata.txt");

    while (!reader.EndOfStream)
    {

        string line = reader.ReadLine();
        string[] parts = line.Split(' ');

        string item = parts[0];
        string owner = parts[1];

        Random rnd = new Random();
        int test = rnd.Next(item.Length+10000);//For every 'item' a Random number is generated.(the +10000 is simply to produce a 4-digit number)

        //Console.WriteLine(test);//Testing 
        Backup BP = new Backup(item, owner,test);

        bDict.Add(test.ToString(), BP);//Adding to the Dictionary.

        //Console.WriteLine(string.Format("{0}, {1}, {2}", item, test, owner));

    } …
Run Code Online (Sandbox Code Playgroud)

c# random numbers

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