小编Par*_*rma的帖子

HttpResponseMessage的通用版本是否已从ASP.NET WebApi中删除?

我刚刚完成了VS 2012 RC的安装,并开始使用ASP.NET Web API.我的工作基于PluralSight的一些教程,我一直在使用它作为参考.

在我使用的每个教程和文章中,我注意到它们HttpResponseMessage在返回类型中使用了通用版本Action,但令我惊讶的是,编码时我无法使用这个对象.我想也许问题只是一个不正确的命名空间引用,但似乎并非如此.

有人能指出我如何利用HttpResponseMessagePluralSight在其视频中使用的通用对象的一些源代码或参考资料吗?

.net c# asp.net-web-api

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

GetBlobReference和GetBlobReferenceFromServer有什么区别?

我试图将一些图像保存到azure blob存储中,并且有两种方法可以获得blob GetBlobReferenceGetBlobreferenceFromServer的引用, 但我找不到两者之间的区别.

这两者有什么区别吗?

azure azure-storage

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

以编程方式构建项目

我需要以编程方式为.csproj构建一个项目,我正在创建.在搜索Google时,我找到了MS为MSBuild Engine提供的类和API.有了这些信息,我创建了一个执行msbuild.exe然后读取输出的进程,但现在我想使用命名空间Microsoft.Build.Execution来构建项目.这是我的计划:

public class Compiler
{
   private static string locationOfMSBuilldEXE = "";
   public static void Build(string msbuildFileName)
   {
       BuildManager manager = BuildManager.DefaultBuildManager;

       ProjectInstance projectInstance = new ProjectInstance(msbuildFileName);
       var result = manager.Build(new BuildParameters() 
                {
                    DetailedSummary = true
                }, 
                new BuildRequestData(projectInstance, new string[] { "Build" }));
       var buildResult = result.ResultsByTarget["Build"];
       var buildResultItems = buildResult.Items;

       string s = "";
   }
}
Run Code Online (Sandbox Code Playgroud)

结果表明这很好,但我需要知道编译的详细输出以及如何查看它.如果有人可以给我链接到MSBuild的好教程或书籍,那将会非常有用.

c# msbuild

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

JavaScript中函数文字的精确含义

在JavaScript中,有对象文字和函数文字.

对象文字:

myObject = {myprop:"myValue"}
Run Code Online (Sandbox Code Playgroud)

功能文字:

myFunction = function() {
   alert("hello world");
}
Run Code Online (Sandbox Code Playgroud)

字面文字的意义是什么?我们可以说Java有方法文字吗?

public void myMethod() {
    System.out.println("are my literal");
}
Run Code Online (Sandbox Code Playgroud)

javascript function-literal literals

11
推荐指数
4
解决办法
9374
查看次数

在Asp.Net MVC中使用NonAction修饰的私有方法和动作之间的区别

在Asp.Net MVC中,如果我使用属性修饰一个动作方法,NonAction那么访问该站点的用户将不允许它被调用.我做的时候会发生同样的事情private

那么两者之间的区别是NonAction什么?是否有一个特殊的目的是为了制造哪个属性?

例如,它们之间的区别是什么

[NonAction]
public ActionResult SomeAction(){}
Run Code Online (Sandbox Code Playgroud)

private ActionResult SomeAction(){}
Run Code Online (Sandbox Code Playgroud)

在asp.net MVC的上下文当然我知道一个是public另一个是private

asp.net-mvc private

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

为什么在ASP.NET MVC中使用lambdas而不是反射?

现在与Asp.Net MVC合作已经有一段时间了,但是我遇到了一个非常奇怪的问题.每次我创建一个模型时,我都会使用lambda表达式,如:

@Html.EditorFor(model=>model.SomeProperty)
Run Code Online (Sandbox Code Playgroud)

为什么Asp.Net MVC使用这种类型的架构?

为什么我不能用反射传递属性?

是否更快地使用lambda表达式?因为在引擎盖下我认为要获得属性名称必须使用反射.

reflection asp.net-mvc lambda

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

实体框架迁移API

您好我已经在实体框架之上创建了一个数据同步项目.框架在某种程度上与模式无关.我想让它更容忍模式的变化,即使是目前被认为是重大的变化.

为了实现这一点,我必须进入ef迁移引擎,并且必须生成一个命令

add-transformation 
Run Code Online (Sandbox Code Playgroud)


这将检测变化并创建转型.

我已经查看了ef 6的源代码,但无法找到合适的起点.任何帮助,将不胜感激.

编辑1: - 回答评论中收到的问题

  1. 代码优先方法
  2. 范围:
    数据的更改将由迁移处理,因此无需合并更改.我需要的是一种执行命令的方法,就像add-transformation创建一个像新迁移一样的新转换.所以通常我会说我有一个像数据库模型(域模型)

    A类{public int a {get; set;} public int b {get; 设置;}}

然后我将类更改为结构

class A 
{
 public int a {get; set;}
 public int b {get; set;}
 public int c {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

然后我运行add-tranformation ClassChangesA
我需要的代码

1.检测更改
2.生成类似迁移类的类.防爆.

class Transformation_112334_ClassChangesA
{
 public A Up(OldA model){
   //Property C added
 }
 public OldA Down(A model){
   //Property C removed
 }
}
Run Code Online (Sandbox Code Playgroud)

entity-framework ef-migrations

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

如何检查CloudBlobDirectory是否存在?

在我编程的软件中,我试图在Azure的blobs结构上创建一个虚拟文件系统.

很多时候,在这个过程中,我从系统中得到一条路径,我需要判断路径是a Blob还是只是BlobDirectoryazure提供的虚拟路径.我通过将它从一种形式转换为另一种形式并处理错误来做到这一点.

但是现在,如果我知道路径指向虚拟目录,我该如何检查该虚拟目录是否存在?

我可以CloudBlobDirectory使用以下代码获取对它的引用:

var blobDirectory = client.GetBlobDirectoryReference("Path_to_dir");
Run Code Online (Sandbox Code Playgroud)

azure azure-storage azure-storage-blobs

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

c# Async 和 await 的成本有多高

最近正在尝试使用 c# 进行异步和等待。这是我的代码

private async void button1_Click( object sender, EventArgs e )
  {
    textBox1.Text = string.Empty;

    var client = new WebClient();

    var sw =  Stopwatch.StartNew();

    var downloadStringTask = client.DownloadStringTaskAsync("http://www.google.com");

    textBox1.Text += "Downloading string async "+sw.ElapsedMilliseconds;
    sw.Restart();

    await downloadStringTask;

    textBox1.Text += Environment.NewLine + "Downloaded "+sw.ElapsedMilliseconds;
    sw.Stop();
}
Run Code Online (Sandbox Code Playgroud)

这是我在 textbox1.text 中获得的输出

Downloading string async 5698
Downloaded 666
Run Code Online (Sandbox Code Playgroud)

这意味着只调用DownloadStringTaskAsync()正在5.6 Seconds执行的实际下载<1 second。当使用此方法的原因是为了节省线程资源。

如果这是真的,是否有任何实际情况应该使用 WebClient 类的这种方法?或者我只是在用完全不正确的术语思考?

c# webclient async-await

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

Angular UI路由器 - 具有空Url的抽象父状态

我试图在我的应用程序内设置多个嵌套状态.这是相关的代码.

function configFn($stateProvider, $urlRouterProvider) {
        $urlRouterProvider.otherwise("/cart");
        $stateProvider
            .state('checkout', {
                url: '/',
                templateUrl: 'app/checkout/views/checkout.container.html',
                controller: 'checkoutCntrl',
                abstract: true
            })
                .state('checkout.cart', {
                    data: { step: 1 },
                    url: '/cart',
                    views: {
                        "styles": {
                            templateUrl: 'app/checkout/views/checkout.styles.html',
                            controller: 'checkoutStylesCntrl'
                        },
                        "cart": {
                            templateUrl: 'app/checkout/views/checkout.cart.html',
                            controller: 'cartCntrl'
                        }
                    }
                })
                //.other states

    }
Run Code Online (Sandbox Code Playgroud)

我面临的问题是国家和国家的过渡没有发生.
因此,如果我在#/之后没有任何内容打开我的页面,那么我什么也看不到.

如果我放入//cart网址,应用程序工作正常,这似乎是合乎逻辑的,//cart可能意味着第一个/是状态checkout,/cart第一个/是状态checkout.cart.

但问题是我希望状态checkout.cart加载到url /cart而不是//cart

javascript angularjs single-page-application angular-ui-router

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

在Asp.Net Web API中实现自定义模型绑定器时出错

我坚持这个非常奇怪的问题.
我有一个名为AttendanceControllerderived 的API控制器APIControllerFA,从ApiController
这里派生出来的是代码

public class AttendanceController : ApiControllerFA
    {
        public HttpResponseMessage PostAttendance([ModelBinder(typeof(AttendanceRegistrationModelBinder))]AttendanceRegistrationModel model)
        {
            //checking model state for errors
            //throw new Exception("Just to throw an error ");

            ...........
Run Code Online (Sandbox Code Playgroud)

从PostAttendance方法可以看出,我有一个自定义ModelBinder命名AttendenceRegistrationModelBinder,这是代码

public class AttendanceRegistrationModelBinder :  DefaultModelBinder
    {

        protected override void BindProperty(ControllerContext controllerContext, ModelBindingContext bindingContext, System.ComponentModel.PropertyDescriptor propertyDescriptor)
        {
            if (propertyDescriptor.Name == "formJson")
            {
                string val = bindingContext.ValueProvider.GetValue(propertyDescriptor.Name).AttemptedValue;
                dynamic jsonVal = JsonConvert.DeserializeObject(val);
                propertyDescriptor.SetValue(bindingContext.Model, jsonVal);
                return;
                //SetProperty(controllerContext, bindingContext,propertyDescriptor,jsonVal);
            }
            base.BindProperty(controllerContext, bindingContext, propertyDescriptor);
        }


    }
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用Fiddler访问此控制器时.我得到一个错误说 …

c# custom-model-binder asp.net-mvc-4 asp.net-web-api

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

DataContext是MVC中Model的一部分还是Controller的一部分?

今天在 ASP.NET MVC 上工作了一段时间,
一直在解决一个理论问题,
在 MSDN 上浏览了一些示例代码,
我读到了这样的内容

public class SomeController()
{
 public ActionResult SomeAction(SomeModel model)
 {
   var dataContext = new SomeDataContext();
   //basic CRUD operations on data context
   //
 }
}
Run Code Online (Sandbox Code Playgroud)

这里数据库显然是通过控制器访问的,理论上是不正确的,
这个例子或者我对模型和控制器的定义有问题吗?需要刷新更新
:-
或者有可能每个地方都有问题MSDNModelsViewModels被认为是平等的

model-view-controller datacontext asp.net-mvc separation-of-concerns

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

如何使用epplus在值大于特定常量值的单元格上添加条件格式

我已经以编程方式制作了一张excel表.现在我想在特定的单元格范围上添加条件格式.

格式化类型是所有单元格 values greater than 0 (>0)

怎么去做呢?在excel中,我可以使用内置公式来实现Cell Values Greater Than.但是如何使用C#和epplus将它嵌入excel?

c# excel epplus

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