小编Jam*_*min的帖子

Newtonsoft忽略属性?

我目前正在使用相同的C#DTO将数据从CouchDB中提取出来,通过LoveSeat,我将通过ASP MVC控制器返回JSON.

我正在使用NewtonSoft库来扫描我的DTO,然后通过控制器发送它们.

但是,由于CouchDB也使用NewtonSoft,因此它也尊重属性级别的NewtonSoft属性

[JsonIgnore]
[JsonProperty("foo")]
Run Code Online (Sandbox Code Playgroud)

有没有告诉newtonsoft库明确忽略这些属性?LoveSeat允许我提供我自己的IObjectSerializer,它让我可以完全控制netwonsofts JsonSerializerSettings.那么,通过这些设置我可以忽略这些属性吗?

我问,作为唯一的选择,我现在可以看到的是欺骗我的DTO.虽然并不可怕,但并不是很好.

我能看到的唯一另一种方法是将我自己版本的Newtonsoft.Json源码引入我的项目,使用不同的程序集名称等等.但这种方式疯狂绝对是谎言,我会在我离开之前欺骗DTO路.

c# asp.net-mvc couchdb json.net

61
推荐指数
5
解决办法
8万
查看次数

Silverlight构造函数注入视图模型+设计模式

我试图在Silverlight 4中编写可测试的ViewModel.我正在使用MVVM灯.

我正在使用AutoFac和IoCContainer正在完成它的工作.但是要注入ViewModel的构造函数,它绑定到Views我有这个构造函数链接:

    public UserViewModel() : this(IoCContainer.Resolve<IUserServiceAsync>())
    {

    }

    public UserViewModel(IUserServiceAsync userService) 
    {
        if (this.IsInDesignMode) return;

        _userService = userService;
    }
Run Code Online (Sandbox Code Playgroud)

哪个不干净,但是到目前为止我找到的最佳选择.这是有效的,我的应用程序可以根据需要工作,并且可以通过控制倒置来测试

但是,我的VM绑定到我的视图,如下所示:

 <UserControl.DataContext>
            <ViewModel:UserViewModel />
 </UserControl.DataContext>
Run Code Online (Sandbox Code Playgroud)

在我的XAML页面属性中,VS2010和Blend中的设计模式都不起作用.

是否有更好的方法来实现我在Silverlight中尝试仍然适用于设计模式的东西?丢失设计模式不是一个交易破坏者,但在学习XAML时会很方便.一个更干净的无链接方式会很好!

我认为可以使用AutoFac/IoC将视图模型解析为视图,与上面的XAML标记方法一致,并沿着这条路线走下去?

谢谢.

c# silverlight ioc-container silverlight-4.0 mvvm-light

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

域服务与WCF服务?

我慢慢钻研Silverlight,经过一段时间的尝试,我终于能够将自己的自定义对象从我的网站返回到我的silverlight客户端,使用支持Siverlight的WCF服务.

现在,我在域服务和WCF服务的差异之间有点不知所措.

我已经完成了教程,其中域服务绑定到数据上下文,然后绑定到siliverlight控件.太棒了:)然而,我在哪里打了一块石头试图回报任何酒吧IQuerryable; 作为String,我自己的简单类型等.

我找到了一些教程,例如这个教程用[ServiceContract]注释标记一个函数,并在你的简单类中有一个[Key].这没有用,[ServiceContract]无法解析,我后来找到了一个指导说使用[Invoke].然后我遇到了无法加载函数并得到结果的问题,我基本上都去了这里

[Invoke]
    public string HelloWorld(string name)
    {
        return string.Format("Hello {0}.", name);
    }


var helloWorld = new HelloWorldDomainContext();
        //helloWorld.HelloWorldCompleted += new EventHandler<InvokeEventArgs<string>>(HelloWorldHelloWorldCompleted);
        //helloWorld.HelloWorld("Mark Monster");
Run Code Online (Sandbox Code Playgroud)

无论如何,我随后发现了启用了Silverlight的WCF服务,并且能够返回我自己的自定义对象并将其称为罚款.

tl; dr - 域服务是否仅在绑定到Silverlight控件时使用?即它是一种直接的单向绑定,并且在需要时被调用,并且我在服务器上进行所有与Linq相关的排序/过滤/选择?

并且假设我想返回一个xmlString,然后我使用WCF服务?我是否适合在我的应用程序中使用WCF服务和域服务?

对不起,如果上面有点混乱!只是试图掌握这一切来自ASP.NET/Flex

非常感谢.

c# silverlight silverlight-3.0

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

单元测试RenderMvcController甚至可能吗?

所以我正在使用Umbraco 6.12并且很难测试一个RenderMvcController.

我已经IApplicationEventHandler在我Global.ascx和Ninject中实现了正常运行并且正如预期的那样运行应用程序 - 一切都很好.

但是,对这些控制器进行单元测试是另一回事.我发现了这个,并添加了最新的回复:

http://issues.umbraco.org/issue/U4-1717

我现在在我的SetUp中有这个可爱的黑客:

 Umbraco.Web.UmbracoContext.EnsureContext(new HttpContextWrapper(new HttpContext(new HttpRequest("", "http://www.myserver.com", ""), new HttpResponse(null))), ApplicationContext.Current);
Run Code Online (Sandbox Code Playgroud)

哪个已经绕过原来UmbracoContext不能为空,但现在抛出:

当前尚未在Umbraco.Web.PublishedCache.PublishedCachesResolver上初始化.您必须在尝试读取之前初始化Current.

已发布的缓存解析器似乎也隐藏在内部和受保护的东西之后,我无法使用反射来破解,因为我无法初始化SetProperty反射.

这真的令人沮丧,我喜欢v6,使用uMapper非常好.我可以随意将一个回购,服务,命令或查询注入控制器,生活很美好 - 我无法覆盖控制器!

任何有关这方面的帮助将不胜感激.

谢谢.

unit-testing umbraco

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

Sql-server全文CONTAINS + COLLATE忽略重音问题

嗨所有我在这里挣扎一点使用COLLATE忽略重音同时也使用包含全文.

我已经减少了列,我只搜索一个这里的例子,并且我很难编码实际参数只是为了这个直到我理解它.

如果我有

SELECT 
     Col1,
     Title COLLATE SQL_Latin1_General_Cp850_CI_AI AS Title,
     ColX
FROM
     Foo
WHERE 
     CONTAINS((Title),  '"suenos" OR "french"') 
Run Code Online (Sandbox Code Playgroud)

这只会返回法语结果.如果我添加外卡后,例如:

 WHERE 
     CONTAINS((Title),  '"suenos*" OR "french"') 
Run Code Online (Sandbox Code Playgroud)

我得到了Sueños和法语的结果.我注意到了LIKE和COLLATE的相同行为,例如它只有'suenous%'的词与'suenos'相对应.

为什么是这样?

非常感谢.

sql sql-server full-text-search

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

Linq2Entities,多对多和动态where子句

我对Linq很新,并且在多对多的关系中努力使用动态.

数据库表是这样的:

产品< - > Products_SubCategories < - >子类别

Products_SubCategories链接表.

我的完整linq声明是

 db.Products.Where("it.SubCategories.SubCategoryID = 2")
                   .Include("SubCategories")
                   .OrderBy(searchOrderBy)
                   .Skip(currentPage * pageSize)
                   .Take(pageSize)
                   .ToList()
                   .ForEach(p => AddResultItem(items, p));
Run Code Online (Sandbox Code Playgroud)

所以忽略了一切,Where()我只是试图提取所有链接到子类别ID 2的产品,这就失败了

要从集合中提取属性,必须使用子查询迭代集合.,靠近多部分标识符,第8行,第1列.

我认为使用SQL-esque语法我可以根据此链接执行子查询.但是我不确定如何在lambda/chaining语法中这样做.

这是搜索功能的开始,我想动态地建立where字符串,因为我有searchOrderBy字符串以避免大SELECT CASE.产品通过链接表链接到另一个表,一旦我了解如何执行此示例,我将需要包含该链接表.

任何帮助将非常感激!

谢谢

c# linq lambda linq-to-entities

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

定位无序列表的列表项中的第一个和最后一个锚点

我正在尝试将无序列表的列表项中的第一个和最后一个锚定位:

<ul>
    <li><a href="#">HOME</a></li>
    <li><a href="#">LINK</a></li>
    <li><a href="#">LINK</a></li>
    <li><a href="#">LINK</a></li>
    <li><a href="#">LINK</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我试过了:

.menu ul .last a {}
.menu ul.last a {}
.menu ul li .last a {}
.menu ul li.last a {}
Run Code Online (Sandbox Code Playgroud)

我需要定位锚点,因为我需要删除第一个和最后一个锚点的边框.我不能使用(或者至少我认为我不能)边框<li>,因为它需要一些垂直填充,因此分隔符边框不是垂直齐平的.

html css css-selectors

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