小编Vad*_*bak的帖子

使用资源服务时如何传入参数?

一个非常新秀的问题:

我正在尝试使用工厂方法构建资源对象:

.factory('Magazines', [function ($resource) {

    var url = document.URL;
    var urlArray = url.split("/");
    var organId = urlArray[urlArray.length-1];

    return $resource('http://localhost/ci/api/magazines/:id', {
        loginID : organEntity,
        password : organCommpassword,
        id : organId
    });
  }])
Run Code Online (Sandbox Code Playgroud)

这种方法很简单,因为所有参数都是预定义的,organEntity和organCommpassword是在标签内定义的.

现在,对于不同的资源对象,我需要在调用工厂时传入参数.

我想这个资源对象的调用代码应该如下所示:

.controller('ResrouceCtrl', function($scope, Magazines) {
      $scope.magazines = Magazines.query();
});
Run Code Online (Sandbox Code Playgroud)

我知道query()方法可以添加参数: Magazines.query(params, successcb, errorcb);

我想知道我是否只传入参数,我可以在工厂获得参数吗?如何在factory方法中指定这样传入的参数?

例如,现在假设我不能再从url获取organId,我需要从我的控制器传递它,如何在工厂方法中接收organId?


这是我的资源js:

.factory('MagComments', function ($resource) {


    return $resource('http://localhost/dooleystand/ci/api/magCommenct/:id', {
      loginID : organEntity,
      password : organCommpassword,
      id : '@magId' //pass in param using @ syntax
    });
  })
Run Code Online (Sandbox Code Playgroud)

这是我的控制器:

$scope.magComments = MagComments.query({magId : 1}); …
Run Code Online (Sandbox Code Playgroud)

angularjs

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

使用带有.Net配置框架的必需子ConfigurationElement加载ConfigurationSection

我有一个控制台应用程序试图从web.config文件加载CustomConfigurationSection.

自定义配置部分具有所需的自定义配置元素.这意味着当我加载配置部分时,如果配置中不存在该配置元素,我希望看到异常.问题是.NET框架似乎完全忽略了isRequired属性.因此,当我加载配置部分时,我只创建自定义配置元素的实例并将其设置在配置部分.

我的问题是,为什么会发生这种情况?我希望GetSection()方法触发ConfigurationErrors异常,因为配置中缺少必需的元素.

以下是我的配置部分的外观.

public class MyConfigSection : ConfigurationSection
{
    [ConfigurationProperty("MyConfigElement", IsRequired = true)]
    public MyConfigElement MyElement
    {
        get { return (MyConfigElement) this["MyConfigElement"]; }
    }
}
public class MyConfigElement : ConfigurationElement
{
    [ConfigurationProperty("MyAttribute", IsRequired = true)]
    public string MyAttribute
    {
        get { return this["MyAttribute"].ToString(); }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我加载配置部分的方法.

   class Program
    {
        public static Configuration OpenConfigFile(string configPath)
        {
            var configFile = new FileInfo(configPath);
            var vdm = new VirtualDirectoryMapping(configFile.DirectoryName, true, configFile.Name);
            var wcfm = new WebConfigurationFileMap();
            wcfm.VirtualDirectories.Add("/", vdm);
            return WebConfigurationManager.OpenMappedWebConfiguration(wcfm, "/");
        } …
Run Code Online (Sandbox Code Playgroud)

c# configuration configurationsection configurationelement webconfigurationmanager

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

使用AutoMapper从POCO映射到NHibernate代理对象时出错

我们最近升级了AutoMapper,并在以某种方式映射项目时遇到了问题.

当我加载NHibernate域对象,并尝试以下列方式将我的模型映射到它:

var myPoco = new MyPoco();
var proxy = repository.Load<MyDomainObject>(id);
Mapper.Map(myPoco, proxy);
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Missing type map configuration or unsupported mapping.

MyPoco-> MyDomainObjectProxy
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用方法的以下重载,我不会得到异常:

var myDomainObj = Mapper.Map<MyPoco, MyDomainObject>(myPoco);
Run Code Online (Sandbox Code Playgroud)

当您查看AutoMapper代码时,您可以看到这些方法在代码库中调用不同的基本方法,这就是它们表现不同的原因.

这是较新版本的AutoMapper的错误,还是有另一种方法使用Mapper.Map(源,目标)方法与代理?

注意:这是使用AutoMapper 2.2.0.我相信这在0.3中运行良好.

c# proxy-classes automapper

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

带有WCF和持久队列的RabbitMQ

我正在尝试编写一个适用于rabbitMQ绑定的wcf服务.我能够成功创建服务器和客户端,并让客户端通过队列向服务器发送消息.我对2个问题很困惑.

  1. 服务一旦关闭,队列就会被删除.有没有办法配置wcf和rabbitMQ,以便队列是持久的?这样,如果我的服务器崩溃,我不必担心丢失数据.

  2. 我似乎无法控制队列的名称.当我运行时,rabbitmqctl.bat list_queues我看到队列被调用amq.gen-3IgZD30XvTEQWNRsezSUUA==.有没有办法控制队列的名称?

wcf message-queue rabbitmq

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

使用项目依赖项作为全局命令运行Dnx控制台应用程序

我有一个引用类库项目的DNX控制台应用程序.我试图发布它并将其安装为全局命令.

我在Windows 10操作系统上这样做. 项目树

控制台项目 Program.cs

namespace Vert.Commands
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var test = new ConsoleWriter();
            test.Talk("Test", ConsoleColor.Cyan);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

控制台项目 project.json

{
  "version": "1.0.0-*",
  "description": "Test App",
  "authors": [ "vrybak" ],
  "tags": [ "" ],
  "projectUrl": "",
  "licenseUrl": "",
  "compilationOptions": {
    "emitEntryPoint": true
  },
  "dependencies": {
    "CommandLib": "1.0.0-*"
  },
  "commands": {
    "vm-test-job": "Vert.Commands"
  },
  "frameworks": {
    "dnx451": {}
  }
}
Run Code Online (Sandbox Code Playgroud)

类库:CommandLib文件:ConsoleWriter

namespace CommandLib
{
    public class ConsoleWriter
    { …
Run Code Online (Sandbox Code Playgroud)

c# asp.net dnx dnu

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

使用SAML 2.0的WIF(Windows Identity Foundation)

首先是一些背景:

我们最近的任务是将SAML 2.0断言发送到我们正在与之通信的服务器.我们正在为我们的客户使用WCF.服务器未使用WCF.实现服务器的人没有会发出SAML断言的STS.我们正在尝试使用WIF框架,因为它支持SAML 2.0令牌.

  1. 是否可以使用来自客户端的消息发送SAML 2.0断言而无需从STS获取SAML2令牌?如果可以,请发布一些示例代码,了解如何使用WCF和Windows Identity Foundation进行此操作?我环顾四周,找不到任何东西.

  2. 有没有人有客户从STS获取SAML2.0令牌然后将带有断言的令牌发送到服务器应用程序的任何示例?

c# wcf authorization saml wif

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

管理内部第三方依赖关系

我们有很多不同的解决方案/项目,由不同的团队管理.我们的解决方案需要参考另一个团队拥有的几个项目.我们不希望将这些依赖项添加为项目引用,因为我们不打算修改该代码,我们只想使用它.此外,我们的解决方案中已经有相当多的项目,并且不想添加更多项目,因为它会降低Visual Studio的速度.因此,我们在单独的解决方案中构建这些项目,并将它们作为文件引用添加到我们的解决方

我的问题是,人们如何管理这些类型的依赖关系?我是否应该只有一些自动化流程来查找这些项目的更改,构建它们并将dll检查到我们的源代码控制中,之后我们将它们视为其他第三方依赖项?有推荐的方法吗?

version-control projects-and-solutions dependency-management visual-studio

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

将网站部署包构建为postbuild事件

我正在使用visual studio 2010.我有一个网站项目,我想在每次构建项目时构建一个网站部署包.基本上我正在寻找一个post build MSBuild命令的例子,该命令基本上与网站右键菜单中的"Build Deployment Package"选项做同样的事情.

msbuild visual-studio-2010 msdeploy

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

Nhibernate 存在于何处 queryOver

我有以下对象

public class Document
{
    public Guid Id { get; set; }
    public ISet<Tag> Tags { get; set;}
    ...
}

public class Tag 
{
    public Guid Id { get; set;} 
}
Run Code Online (Sandbox Code Playgroud)

这是多对多关系,但我没有中间 DocumentTag 对象。我正在尝试使用 QueryOver 语法返回具有所有一组标签的所有文档。这是我到目前为止所拥有的。

Guid[] tagsThatMustMatch = ...;
var result = Session.QueryOver<Document>()
               .WithSubquery
               .WhereExists(QueryOver.Of<Tag>().Where(t => tagsThatMustMatch.Contains(t.Id))
               .List()
Run Code Online (Sandbox Code Playgroud)

我很难表达这个要求。我知道我必须动态构建一个查询,该查询将为每个必须匹配的标签提供一个WhereExists。这些WhereExists 需要进行与运算。我遇到的另一个问题是WhereExists 方法需要接受DetachedQuery。但我没有办法限制它只查看该文档没有所有标签的标签。

有没有什么例子可以让我看到如何做这样的事情?

nhibernate queryover

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