小编use*_*411的帖子

自动映射:部分映射

我使用Automapper将数据从objectA传输到objectB

classe ObjectA
{
   string Title;
   string Summary;
}

classe ObjectB
{
   string Title;
   string Summary;
   IAddress Address;
}
Run Code Online (Sandbox Code Playgroud)

我在两个对象之间创建了这种映射

AutoMapper.Mapper.CreateMap<IObectA, IObjectB>()
      .ForMember(dest => dest.Title,           src => src.MapFrom(s => s.Title))
      .ForMember(dest => dest.Summary,         src => src.MapFrom(s => s.Summary))
      .ForMember(dest => dest.Address,         src => src.Ignore())
Run Code Online (Sandbox Code Playgroud)

我创建我的ObjectB并填充其所有属性,包括地址

当我调用mapper时,我希望它覆盖Title和Summary并忽略Address

ObjectB = Mapper.Map<IObjectA, IObjectB>(objectA); 
Run Code Online (Sandbox Code Playgroud)

实际上,它是地址的抛出和异常.

我究竟做错了什么?

[更新] 为了表达不同,我有我的objectB,我想用来自ObjectA的数据更新它的一部分.当我说Ignore时,我的意思是以他们已经存在的方式保留数据

automapper

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

在JavaScript中扩展具有多个属性的对象

我有一个具有多个属性和函数的全局JavaScript对象,我正在以这种方式创建它:

myObject = {};
Run Code Online (Sandbox Code Playgroud)

我认为我可以通过创建这样的东西轻松扩展这个对象

myObject = { propA1 : null, ....., propAN : null};
Run Code Online (Sandbox Code Playgroud)

代替

myObject.propA1 = null;
myObject......;
myObject.propAN = null;
Run Code Online (Sandbox Code Playgroud)

我的做法有什么问题?

javascript object

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

JavaScriptSerializer().Serialize:PascalCase到CamelCase

我有这个javascript对象

var options:
 {
        windowTitle         : '....',
        windowContentUrl    : '....',
        windowHeight        : 380,
        windowWidth         : 480
}
Run Code Online (Sandbox Code Playgroud)

我有这个C#类

public class JsonDialogViewModel
    {
        public string WindowTitle               {   get;    set;    }
        public string WindowContentUrl          {   get;    set;    }
        public double WindowHeight              {   get;    set;    }
        public double WindowWidth               {   get;    set;    }

    }
Run Code Online (Sandbox Code Playgroud)

你看,我的符号是C#中的PascalCase,而我的Javascript是CamelCase.通常的惯例.

我正在使用JavaScriptSerializer().Serialize来序列化我的C#对象并在我的Javascript代码中使用它.

然而,我面临的问题是PascalCase到CamelCase,JavaScriptSerializer().Serialize无法处理.

您有什么建议来解决这个翻译?

谢谢

javascript c# serialization camelcasing pascalcasing

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

MSDEPLOY:如何访问Visual Studio生成的命令

如何访问Visual Studio 2010生成的MSDEPLOY命令行.

我问,因为当我手动运行MSDEPLOY时,我可以轻松地在远程服务器上部署,当我在Visual Studio中运行它时,我收到此错误

Web部署任务失败.(无法联系远程代理(url https:// xxxx:8172/msdeply.axd?site =默认网站)确保在目标计算机上安装并启动了远程代理服务.收到了.响应标题'MSDeploy.Response'是''但是'v1'是预期的

远程服务器返回错误:(404)未找到

msdeploy

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

使用Unity在config中注册实例

如何在配置文件中注册实例

我有这个代码:

UnityContainer.RegisterInstance<ICache>(new CacheMng(HttpRuntime.Cache));
Run Code Online (Sandbox Code Playgroud)

并尝试在配置文件中具有等效项

<register type="ICache" mapTo="CacheMng">
    <lifetime type="Singleton"/>
    <constructor>
        <param name="cache" type="System.Web.Caching" value="HttpRuntime.Cache"/>
    </constructor>>
</register>
Run Code Online (Sandbox Code Playgroud)

我的CacheMng类有这个构造函数

public CacheMng(Cache cache)
{
    this._cache = cache
}
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误

无法解析类型名称或别名System.Web.Caching

.net c# dependency-injection unity-container

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

MVC3:超出最大请求长度

以下是上下文:

ASP MVC3 - IIS 7

我正在使用ElMah配置得很好,因为MVC几乎无处不在.它正在发挥作用.

这是我在配置文件中的内容

  <system.web>
    <httpRuntime maxRequestLength="1024" enableVersionHeader="false" />
    <customErrors mode="On" defaultRedirect="~/Error/Generic" />
    ...
     <system.webServer>
        <httpErrors errorMode="Detailed" existingResponse="PassThrough" defaultPath="~/Error/Generic" defaultResponseMode="ExecuteURL"></httpErrors>
Run Code Online (Sandbox Code Playgroud)

现在这是我的问题我花了整整一天试图捕获这个错误:当我提交超过1024字节的文件时"超出最大请求长度"

在asp错误和IIS错误之间,有时IE拦截,我变得疯狂,我无法理解为什么这么复杂.我已经尝试过这些解决方案,没有一个能为我 解决方案1 解决方案2

谢谢您的帮助

iis-7 asp.net-mvc-3

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

Unity DI容器中所有对象的列表

有没有办法让我的DI容器中注册的所有对象的列表.ResolveAll给出了一个类型的列表,但我想要一个所有类型的通用列表

dependency-injection unity-container

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

自动映射:使用自定义解析程序返回的结构

使用AutoMapper,我使用ValueResolver返回这样的结构

struct MyStruct
{
        public int propA;
        public int propB;
        public int propC;
}

class MyResolver : ValueResolver<MyViewModel, MyStruct>
{ 
     protected override MyStruct ResolveCore(MyViewModel source)
     {
      ....return MyStruct data
     }
}
Run Code Online (Sandbox Code Playgroud)

我返回了一个结构,因为映射规则非常复杂,我无法为每个属性编写自定义解析器,因为它们彼此相关.

所以我的想法是在一个返回结构并使用它的解析器中执行此操作

AutoMapper.Mapper.CreateMap<MyViewModel, myData>()
    .ForMember(dest => dest.SomePropA, src => src.ResolveUsing<MyResolver>().propA))
    .ForMember(dest => dest.SomePropB, src => src.ResolveUsing<MyResolver>().propB))
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用.

看起来好像src.ResolveUsing<MyResolver>()没有返回结构

任何帮助都非常感谢.

谢谢.

c# automapper

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

jQuery加入多个标签

嗨,我有一个div元素,其中包含一个像这样的复选框列表

 <ul>
 <li><input type="checkbox" ID="check1" /><label for="check1">Monday</label></li>
 <li><input type="checkbox" ID="check2" checked="checked"/><label for="check2">Tuesday</label></li>
 <li><input type="checkbox" ID="check3" /><label for="check3">Wednesday</label></li>
 <li><input type="checkbox" ID="check4" checked="checked"/><label for="check4">Thursday</label></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我想在"星期二 - 星期四"之类的字符串中检查值.所以我写了这个非常简洁的jQuery指令

$('input:checked', 'ul').next().text() 
Run Code Online (Sandbox Code Playgroud)

这给了我'星期二星期四'.我找不到通过分隔符的方法,并且'周二 - 周四'

jquery join

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

正则表达式,用于查找不以特定字符序列开头的值

如何为不以给定单词开头的内容编写正则表达式

我们假设我有以下列表

  • 一月
  • 二月
  • 六月
  • 七月
  • 十月

我想要一个正则表达式,除了6月和7月之外它们都会返回,因为它们以Ju开头

我写了类似这样的东西^ [^ ju]但是这返回任何以JU 开头我需要以Ju开头的东西

javascript regex

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

问题与Razor MVC3

MVC 3 RC

我注册了System.Web.Razor和System.Web.WebPages.Razor,但仍然在我的View/web.Config中无法识别System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup

用于Razor的Intellisence不起作用我的配置有什么问题

asp.net-mvc razor asp.net-mvc-3

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

SQLServerCE DefaultConnectionFactory

我正在使用Entity Framework 4.1并尝试连接到MVC Web应用程序内的新SQLServerCE 4.0数据库.我正在使用此代码

Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0", "|DataDirectory|", "test.sdf");
Run Code Online (Sandbox Code Playgroud)

它引发了这个例外:

初始化字符串的格式不符合从索引86开始的规范.

这段代码出了什么问题?

如果我使用

Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0")
Run Code Online (Sandbox Code Playgroud)

它工作并创建一个数据库,其名称与我的程序集名称相匹配.

connection-string sql-server-ce

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