小编Tom*_*Tom的帖子

更新到WebApi的RC导致无法从程序集错误加载类型'System.Web.Http.Dependencies.IDependencyResolver'

我最近使用Nuget升级到WebApi的RC版本,但现在出现以下错误.

无法从程序集'System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'加载类型'System.Web.Http.Dependencies.IDependencyResolver'.

使用对象浏览器,我可以看到正确的引用.我尝试过重建,清理和清除临时Internet文件.

一个谷歌搜索出现了http://forums.asp.net/t/1810546.aspx/1?Dependency+Resolver+throws+an+error+with+Unity但这没有多大帮助.

有谁知道是什么原因造成的?

Visual Studio截图

asp.net asp.net-web-api

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

视觉工作室网站 - 许多随机错误,但仍在建设?

我不久前有一个人写的ASP.NET网站,我不认为他们使用VS来构建他们的网站,但不幸的是我不确定他们使用了什么.

我打开网站并构建..没有错误.

一旦我打开任何页面或类,intellisense就几乎所有内容都会呻吟,从一开始

错误25语句不能出现在方法体/多行lambda之外.

在使用语句上,但在每行上的字面错误.但仍然很好.

我有什么想法可以解决这个问题?我仍然可以建立网站,但如果我犯了任何真正的错误,我不知道他们来自哪里,我也没有智能感知.

编辑 - 如果我打开网站上最简单的文件之一的示例.

using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class About : System.Web.UI.Page
{

    protected void Page_Load(object sender, EventArgs e)
    {
        Master.bodyClass = "about"; 
    }

}
Run Code Online (Sandbox Code Playgroud)

错误列表直接转到单个文件上的71个错误.

Error   26  Syntax error.   PATH\about.aspx 1   PATH\   1
Error   27  Syntax error.   PATH\about.aspx 1       PATH\   1
Error   28  Syntax error.   PATH\about.aspx 1   PATH\   1
Error   29  'Class' statement must …
Run Code Online (Sandbox Code Playgroud)

c# visual-studio-2010 visual-studio

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

使用WebAPI时停止XSS

我有一个接受的控制器

public class MyModel
{
   [MaxLength(400)]
   public string Message { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个WebApi Post Action

public HttpResponseMessage Post(MyModel viewModel)
{
            if (!ModelState.IsValid)
                return new HttpResponseMessage(HttpStatusCode.BadRequest);                 
            ...
}
Run Code Online (Sandbox Code Playgroud)

并采取行动.

由于内容是通过javascript写出的,而不是直接在视图中写出来的,确切的内容都被写出来了,也没有关于危险内容的asp.net警告.

我想要防范XSS.目前我在做

HttpUtility.HtmlEncode(Regex.Replace(p.Message, @"<[^>]*>", String.Empty))
Run Code Online (Sandbox Code Playgroud)

在Get动作中.(从使用C#正则表达式删除HTML标记中获取一些代码)

我应该使用Asp.Net内置的保护措施吗?我可以用我的模型装饰任何属性吗?

我注意到了http://stephenwalther.com/archive/2012/06/25/announcing-the-june-2012-release-of-the-ajax-control-toolkit.aspx,但点击了http:// wpl. codeplex.com/似乎非常糟糕.

c# asp.net asp.net-mvc asp.net-4.0

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

如何使用媒体查询定位平板电脑而不是IE9

我发现IE9正在为我的网站采用平板电脑样式.

@media (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait),
       (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape)
{
    /* tablet styles */
}
Run Code Online (Sandbox Code Playgroud)

当浏览器的宽度为1024px时,上述媒体查询将应用于IE9.

做了一些研究之后,我发现了以下问题/解决方案,它提供了解释为什么会发生这种情况的原因.

媒体查询无法在IE9中运行

从我所知,它归结为IE9不解释"min-device-width"和"max-device-width".

根据http://msdn.microsoft.com/library/ms530813.aspx,它不支持这些属性,只支持"min-width"和"max-width".

此外,http://www.w3.org/TR/css3-mediaqueries/#error-handling 声明浏览器应该忽略它无法识别的属性.似乎IE9不是这样.

我还发现了这个问题:在响应式网站上进行媒体查询的常见断点,但它没有给我一个解决方案.

如何将样式表仅应用于平板电脑而不是IE9等桌面浏览器,宽度为1024px?

css html5 css3 media-queries responsive-design

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

为什么我不能将异步查询移动到方法中?

以下代码有效

[Route("case-studies/{slug}")]
public async Task<ActionResult> Details(string slug)
{
    var item = await Db.Pages.OfType<CaseStudy>()
             .WithSlug(slug)
             .FirstOrDefaultAsync();

    if (item == null)
    {
        return HttpNotFound();
    }

    var related = await Db.Pages.OfType<CaseStudy>()
           .Where(r => r.Client == item.Client && r.Id != item.Id)
           .Where(r => !r.IsArchived)
           .Include(r => r.Media)
           .Take(3)
           .Project()
           .To<RelatedPageModel>()
           .ToListAsync();

    var archived = await Db.Pages.OfType<CaseStudy>()
            .Where(r => r.Client == item.Client && r.Id != item.Id)
            .Where(r => r.IsArchived)
            .Take(3)
            .Project()
            .To<RelatedPageModel>()
            .ToListAsync();

    ViewData.Model = new DetailPageModel<CaseStudy>()
    {
        Item = item,
        RelatedItems = related,
        ArchivedItems …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous async-await c#-5.0

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

如何定义传递的组件必须具有某些道具,但也允许额外的道具

我正在传递一个组件作为道具.

这定义如下.

export type TableProps<T> = {
  contents: T[],
  loadContents: () => Promise<T[]>
};
Run Code Online (Sandbox Code Playgroud)

这样工作正常,但我想更新这个定义说,至少应该存在道具,但允许额外的道具.

有没有我可以用来做这个的定义.例如,我想要一个具有以下签名的组件被接受.

type Props = {
  onChangeMark: (val: string) => void,
  ...TableProps<Attendance>
};
Run Code Online (Sandbox Code Playgroud)

我已经尝试将它们定义为界面,但它们仍然被拒绝.

interface TableProps<T> {
  contents: T[],
  loadContents: () => Promise<T[]>
};
Run Code Online (Sandbox Code Playgroud)

更新

我认为这说明了我有Link的问题

更新2

@Rajesh的解决方案似乎没有用,在这里尝试

javascript reactjs flowtype

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

如何在javascript中获取特定HTML标记的所有元素?

我需要隐藏文档中"section"类型的所有元素,而不是具有特定ID的元素.

在jquery中,这很容易

$("section").hide();
$("section#myId").show();
Run Code Online (Sandbox Code Playgroud)

如果没有jquery,我该怎么做?

(我需要在页面加载时发生并且不会显示).我还需要它跨浏览器工作.

谢谢.

javascript

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

使用酶测试 `React.createRef` api

我想测试以下使用React.createRefapi 的类。

快速搜索并没有发现任何这样做的例子。有人成功过吗?我将如何嘲笑裁判?

理想情况下,我想使用shallow.

class Main extends React.Component<Props, State> {

  constructor(props) {
    super(props);
    this.state = {
      contentY: 0,
    };

    this.domRef = React.createRef();
  }

  componentDidMount() {
    window.addEventListener('scroll', this.handleScroll);
    handleScroll();
  }

  componentWillUnmount() {
   window.removeEventListener('scroll', this.handleScroll);
  }

  handleScroll = () => {
    const el = this.domRef.current;
    const contentY = el.offsetTop;
    this.setState({ contentY });
  };

  render() {
    return (
      <Wrapper innerRef={this.domRef}>
        <MainRender contentY={this.state.contentY} {...this.props} />
      </Wrapper>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

更新

所以我可以使用回调引用来测试这个,如下所示

 setRef = (ref) => {
   this.domRef = ref;
 } …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs jestjs enzyme

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

使用数据属性使用键值作为键来创建web api序列化字典

我有一个字典,我正在使用json.net序列化器进行序列化,它目前正在生产

{"phrases":[{"Key":"my-key1","Value":"blah"},{"Key":"my-key2","Value":"blah2"}]}
Run Code Online (Sandbox Code Playgroud)

但我希望它输出

{"phrases":["my-key1":"blah"},{"my-key2":"blah2"}]}
Run Code Online (Sandbox Code Playgroud)

我的模特看起来像

public class Phrases
{
    public Dictionary<string, string> phrases;
}
Run Code Online (Sandbox Code Playgroud)

是否有可以应用于短语模型的数据属性导致这种情况发生?

我找到了以下内容,但不希望将字符串Serialize返回到Json.Net的键值字典中?

更新:

我正在扩展web api控制器,如果我使用JsonConvert.SerializeObject()我得到正确的序列化,但是我会有一个字符串返回.

public class PhraseController : ApiController
    {
        private IApplicationModel applicationModel;

        public Phrases Get(string id)
        {
            var locale = new CultureInfo(id).LCID;
            var phrases = applicationModel.Phrases.Where(x => x.Locale = locale).ToDictionary(x => x.Name, y => y.Value);

            return new Phrases() { phrases = phrases };
        }

        public PhraseController(IApplicationModel applicationModel)
        {
            this.applicationModel = applicationModel;
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# asp.net json.net asp.net-mvc-3 asp.net-web-api

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

我什么时候应该使用icepick.merge而不是lodash.merge

我最近发现需要在我的Reducer中深入融合.

我发现icepick.mergelodash.merge都可以完成这项工作.

似乎icepick.merge是一种有效的方式,可以递归地合并和调用object.freeze.

当使用反应还原剂(和不变性)时,你应该何时使用icepick而不是lodash?在数组和对象上调用object.freeze是一种好习惯吗?

javascript immutability lodash reactjs

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