小编Big*_*ddy的帖子

带Bootstrap Navbar的MVC - 将所选项设置为活动状态

我正在学习Bootstrap,无法将所选项目置于"活动"状态.活动状态保留在默认项目上.新选择/单击的项目会暂时变为活动状态,但会恢复原状.我已阅读所有帖子,仍然无法使此代码生效.我正在使用MVC5和JQuery 2.1.

编辑: 如果我将li的hrefs更改为href ="#",则正确应用活动类.加载新视图时会发生什么?我认为塞巴斯蒂安的回应很接近,但是对于区域而言却变得混乱.

标记

<div class="navbar-wrapper">
    <div class="container">
        <div class="navbar navbar-inverse navbar-fixed-top">

            <div class="navbar-header">
                <a class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </a>
                <a class="navbar-brand" href="#">Test</a>
            </div>
            <div class="btn-group pull-right">
                <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
                    <i class="icon-user"></i>Login
          <span class="caret"></span>
                </a>
                <ul class="dropdown-menu">
                    <li><a href="#">Profile</a></li>
                    <li class="divider"></li>
                    <li><a href="#">Sign Out</a></li>
                </ul>
            </div>
            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li class="active"><a href="~/Home">Home</a></li>
                    <li><a href="~/Home/About">About</a></li>
                    <li><a href="~/Student">Students Sample</a></li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                        <ul …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc twitter-bootstrap twitter-bootstrap-3

24
推荐指数
4
解决办法
4万
查看次数

Async-await - 我在做它吗?

最近我对我在Web API项目中实现async-await模式的方式产生了怀疑.我已经读过async-await应该是"一直",这就是我所做的.但这一切都开始显得多余,我不确定我是否正确地做到了这一点.我有一个调用存储库的控制器,它调用数据访问(实体框架6)类 - "一直异步".我已经阅读了很多相互矛盾的内容,并希望将其清理干净.

编辑:引用的可能重复是一个很好的帖子,但不够具体到我的需要.我提供了代码来说明问题.看来真的很难得到一个决定性的答案.如果我们可以将async-await放在一个地方然后让.net处理其余部分,那就太好了,但我们做不到.那么,我是在做它还是不那么简单.

这是我得到的:

控制器:

public async Task<IHttpActionResult> GetMessages()
{
    var result = await _messageRepository.GetMessagesAsync().ConfigureAwait(false);
    return Ok(result);
}
Run Code Online (Sandbox Code Playgroud)

库:

public async Task<List<string>> GetMessagesAsync()    
{
    return await _referralMessageData.GetMessagesAsync().ConfigureAwait(false);
}
Run Code Online (Sandbox Code Playgroud)

数据:

public async Task<List<string>> GetMessagesAsync()
{           
    return await _context.Messages.Select(i => i.Message).ToListAsync().ConfigureAwait(false);
}
Run Code Online (Sandbox Code Playgroud)

c# async-await asp.net-web-api

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

Web Api请求在将内容复制到流时会出现"错误".

我正在尝试实现此代码示例,但得到HttpRequestException- " 将内容复制到流时出错 ".ReadAsStringAsync()调用方法时 内部异常是" 无法访问已处置的对象".我正在使用Fiddler来提出请求.我不明白.有人可以解释为什么我得到这个例外并提供解决方案吗?

Web Api方法:

public async Task<HttpResponseMessage> Post(HttpRequestMessage request)
{
    try
    {
        var jsonString = await request.Content.ReadAsStringAsync();
    }
    catch (Exception ex)
    {                
        throw;
    }
    return new HttpResponseMessage(HttpStatusCode.Created);
}
Run Code Online (Sandbox Code Playgroud)

提琴手(POST):

User-Agent: Fiddler
Host: localhost:23567
Content-Length: 18
Content-Type: application/json; charset=utf-8
Body{"Test":1}
Run Code Online (Sandbox Code Playgroud)

编辑:

我有一个线索,但需要验证.在Web Api控制器上,我有一个ActionFilterAttribute并且在它的OnActionExecuting覆盖中,有这一行:

public override async void OnActionExecuting(HttpActionContext actionContext)
{
    // omitted code
    actionContext.Request.Content.ReadAsStreamAsync();
}
Run Code Online (Sandbox Code Playgroud)

可能是因为内容在这里被读取,它再也无法使用?如果是这样,我怎么能在方法中使它?此处的内容是否与HttpRequestMessage相同? 可能包含答案.

c# asp.net-web-api

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

自动映射:映射到受保护的属性

我需要使用映射到protected类的属性Automapper.我public在这个类上有一个方法,用于为属性设置值.这种方法需要一个parameter.如何将值映射到此类?

目的地类:

public class Policy
     {
         private Billing _billing;

         protected Billing Billing
             {
                get { return _billing; }
                set { _billing = value; }
             }

         public void SetBilling(Billing billing)
            {
                if (billing != null)
                {
                    Billing = billing;
                }
                else
                {
                    throw new NullReferenceException("Billing can't be null");
                }
            }
    }
Run Code Online (Sandbox Code Playgroud)

这是我的Automapper代码(伪代码)的样子:

Mapper.CreateMap<PolicyDetail, Policy>()
          .ForMember(d => d.SetBilling(???), 
                          s => s.MapFrom(x => x.Billing));
Run Code Online (Sandbox Code Playgroud)

我需要将结算类传递给SetBilling(结算结算)方法.我该怎么做呢?或者,我可以设置受保护的结算属性吗?

c# automapper

9
推荐指数
2
解决办法
1846
查看次数

Azure CloudFile - “指定的资源名称包含无效字符。”

我正在尝试将文件下载Azure File Storage到本地文件并出现此异常:

“指定的资源名称包含无效字符。”

这是代码:

if (_cloudFileShare.Exists())
{
      CloudFileDirectory rootDir = _cloudFileShare.GetRootDirectoryReference();    
      CloudFileDirectory tempDir = rootDir.GetDirectoryReference("temp");
      if (tempDir.Exists())
      {
        var file = tempDir.GetFileReference(saveFrom);
        file.DownloadToFile(saveTo, FileMode.Open);// OFFENDING LINE
      }
 }
Run Code Online (Sandbox Code Playgroud)

saveTo参数是一个字符串,值是这样的:

"C:\Users\Me\AppData\Local\Temp\tmpF2AD.tmp"
Run Code Online (Sandbox Code Playgroud)

saveFrom说法是这样的:

https://storageaccount.file.core.windows.net:443/fileshare/temp/tmpA2DA.tmp

我正在使用此函数创建参数:

var saveTo = Path.GetTempFileName();
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?我对 Azure 没有太多经验。

c# azure azure-storage azure-storage-blobs

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

React JS:应用Material-UI CssBaseline

我想为我的新React应用程序提供一致的外观和感觉Material-UI.此外,我希望样式等易于维护.所以默认主题似乎是一个非常好的开始.该cssBaseline所提供的Material-UI似乎要检查所有的盒子,所以我想试一试.令人惊讶的是,它不起作用.Css主题不是我真正的东西.我在这里误入歧途还是什么?以下代码是我在App.js组件中实现的,没有运气(取自此处).我希望这只是一个细节.

import React from "react";
import Footer from "./Footer";
import CssBaseline from "@material-ui/core/CssBaseline";
import AddTodo from "../containers/AddTodo";
import VisibleTodoList from "../containers/VisibleTodoList";

const App = () => (
  <React.Fragment>
    <CssBaseline />
    <div>
      <AddTodo />
      <VisibleTodoList />
      <Footer />
    </div>
  </React.Fragment>
);

export default App;
Run Code Online (Sandbox Code Playgroud)

编辑:这是index.js位于项目的根目录:

    import React from "react";
    import { render } from "react-dom";
    import { createStore, applyMiddleware } from "redux";
    import { Provider } from "react-redux"; …
Run Code Online (Sandbox Code Playgroud)

css reactjs material-ui

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

这是使用基于约定的方法在Unity中注册类型的正确方法吗?

我按照惯例注册我的类型,但是我的其他程序集中的某些类型没有一致地注册.有时它们是注册的,而有时则不是.它不会一直失败.这是一些跟踪数据:

...是一个接口,无法构造.你错过了类型映射吗?

我想从我的注册过程中消除第三方dll等.这是正确的方法吗?

public static class UnityConfig
{
    public static void RegisterComponents()
    {
        var container = new UnityContainer();

        container.RegisterTypes(
         AllClasses.FromLoadedAssemblies().Where(t => t.Namespace != null && t.Namespace.StartsWith("MY NAMESPACEs ONLY")),
         WithMappings.FromMatchingInterface,
         WithName.Default);

        GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container);
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:当我删除"Where"过滤器时,这也随机发生.我之前使用过这种注册方法,但从未发生这种情况.这是怎么回事?

c# unity-container asp.net-web-api

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

实体框架真的很慢获得单一项目

从包含6,000条记录的表中获取单个项目大约需要30秒.显然,这是不可接受的,我无法弄清楚为什么.我的堆栈是.NET 4.5,EF 6和Web API 2.我做的事情有什么明显的错误吗?

// DbSet
internal DbSet<TEntity> _dbSet;

// Ctor
public GenericRepository(TContext context)
        {
            _context = context;
            _context.Configuration.ProxyCreationEnabled = false;
            _dbSet = _context.Set<TEntity>();
        }

// Really slow method
public TEntity GetByFilter(Func<TEntity,bool> filter, params Expression<Func<TEntity, object>>[] includes)
        {
            IQueryable<TEntity> query = _dbSet;
            if (includes != null)
            {
                foreach (var include in includes)
                    query = query.Include(include);
            }

            var entity = query.Where(filter).FirstOrDefault();

            return entity;
        }

// Here's how it's called.  It returns a single item
var x = _unitOfWork.Repository.GetByFilter(i …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework iqueryable asp.net-web-api

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

材料用户界面 - 复选框标签丢失

我正在学习Material UI,我正在尝试显示带有标签的复选框.按照在线文档中的示例,我正在渲染一个复选框,但没有标签.我究竟做错了什么?

 return (
        <div className="entryForm" >
            <div style={{width:'100%'}}>
                <h3 style={ {display:'inline-block' } }>
                    User Details
                </h3>
                <span style={{float:'right'}}>
                    <Checkbox
                        label="Active"
                        labelPosition="left"
                    />
                </span>
            </div>...
Run Code Online (Sandbox Code Playgroud)

material-design material-ui

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

React、Redux 和 Recompose:“调度不是一个函数”

我有一个容器/组件(来自Redux示例)抱怨“ dispatch is not a function ”。在添加Recompose. 我认为Recompose在 周围放了一个包装器dispatch(),所以我需要以某种方式公开它。也许applyMiddleware会奏效,但我不知道在哪里连接?我需要做什么?

容器:

const AddTodo = (props, dispatch) => {
  let input;
  const { classes } = props;
  return (
    <div>
      <form
        id="my-form-id"
        onSubmit={e => {
          e.preventDefault();
          if (!input.value.trim()) {
            return;
          }
          dispatch(addTodo(input.value));//<<<OFFENDING LINE
          input.value = "";
        }}
      >
        <TextField
          id="agentName"
          label="Agent Name"
          placeholder="Placeholder"
          form="my-form-id"
          inputRef={el => (input = el)}
          className={classes.textField}
          margin="normal"
        />
        <Button variant="extendedFab" type="submit" className={classes.button}>
          <AddIcon className={classes.addIcon} />
          New Todo
        </Button> …
Run Code Online (Sandbox Code Playgroud)

reactjs redux react-redux recompose

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