小编Car*_*ten的帖子

SelectList的ASP.NET MVC下拉列表

我正在SelectList我的控制器中构建以下内容.

var u = new NewUser();

u.UserTypeOptions = new SelectList(new List<SelectListItem>
{
    new SelectListItem { Selected = true, Text = string.Empty, Value = "-1"},
    new SelectListItem { Selected = false, Text = "Homeowner", Value = ((int)UserType.Homeowner).ToString()},
    new SelectListItem { Selected = false, Text = "Contractor", Value = ((int)UserType.Contractor).ToString()},
});

return u;
Run Code Online (Sandbox Code Playgroud)

并在我的视图上显示如下:

@Html.DropDownListFor(m => m.UserType, Model.UserTypeOptions)
Run Code Online (Sandbox Code Playgroud)

看起来我在它SelectListItem应该是一个非常简单的下拉列表中给它一个有效的一组s,但是我没有获得<option>具有良好值和文本的有效列表,而是得到这个:

<select data-val="true" data-val-range="A user type must be selected." data-val-range-max="2" data-val-range-min="1" data-val-required="The UserType field is required." id="UserType" name="UserType" …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc drop-down-menu

43
推荐指数
3
解决办法
21万
查看次数

IE9 JavaScript错误:SCRIPT5007:无法获取属性'ui'的值:object为null或undefined

我的网站在Chrome,Firefox和Internet Explorer 8上运行良好.但在Internet Explorer 9上,只是将鼠标悬停在组件上时会触发非常奇怪的错误.

SCRIPT5007:无法获取属性'ui'的值:object为null或undefined ScriptResource.axd?d = sTHNYcjtEdStW2Igkk0K4NaRiBDytPljgMCYpqxV5NEZ1IEtx3DRHufMFtEMwoh2L3771sigGlR2bqlOxaiwXVEvePerLDCL0hFHHUFdTOM0o55K0&t = ffffffffd37cb3a1,181行character 1914

并且跟随javascript中的错误链接显示了这些代码:

onNodeOver:function(B,A){A.ui.onOver(B)},onNodeOut:function(B,A){A.ui.onOut(B)}
Run Code Online (Sandbox Code Playgroud)

我对如何解决这个错误有点无能为力.我见过这个解决方案,但这对我来说并没有解决问题.

有任何想法吗?

javascript asp.net internet-explorer-9

42
推荐指数
3
解决办法
17万
查看次数

BadImageFormatException C#

我正在使用Visual C#Studio 10.0和.NET Framework 4.0,我试图加载SoundTouchSharp库并在我的应用程序中创建库(对象)的实例.但是,在我输入文件的路径后,我收到此错误:

BadImageFormatException未处理 - 尝试加载格式不正确的程序.(例外情况HRESULT:0x8007000B)

我该怎么解决这个问题?我几乎肯定我使用VS终端创建了.dll,它应该与.NET框架的版本相同.如果需要,我还可以提供更多代码.

谢谢!

.net c# dll

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

将async lambda表达式转换为委托类型System.Func <T>?

我有一个带有此签名的可移植类库中的异步方法:

private async Task<T> _Fetch<T>(Uri uri)
Run Code Online (Sandbox Code Playgroud)

它获取一个被回送为具体类型T的资源.

我正在使用第三方缓存库(Akavache),它需要一个Func<T>参数作为其中一个,并试图以这种方式这样做:

await this.CacheProvider.GetOrCreateObject<T>(key,
    async () => await _Fetch<T>(uri), cacheExpiry);
Run Code Online (Sandbox Code Playgroud)

这会导致错误:

无法将异步lambda表达式转换为委托类型' System.Func<T>'.异步lambda表达式可能会返回void,Task或者Task<T>没有一个可以转换为' System.Func<T>'.

我已经尝试了各种Func<T>不带任何运气的排列,我能让代码工作的唯一方法就是Func<T>阻塞:

await this.CacheProvider.GetOrCreateObject<T>(key, 
    () => _Fetch<T>(uri).Result, cacheExpiry); 
Run Code Online (Sandbox Code Playgroud)

哪个死了我的应用程序.

关于我误入歧途的任何指示?

c# async-await c#-5.0 portable-class-library

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

在try-catch子句上显示异常

到目前为止,每当我想显示我使用的代码抛出异常时:

try
{
    // Code that may throw different exceptions
}
catch (Exception ex)
{
    MessageBox.Show(ex.ToString());         
}
Run Code Online (Sandbox Code Playgroud)

我使用上面的代码主要是出于调试原因,以便查看异常的确切类型以及抛出异常的相应原因.

在我正在创建的项目中,我使用了几个try-catch子句,并且我想在出现异常时显示弹出消息,以使其更加"用户友好".通过"用户友好",我的意思是一条消息,它将隐藏当前使用上述代码显示的Null Reference ExceptionArgument Out of Range Exception等短语.

但是,我仍然希望查看与创建消息的异常类型相关的信息.

有没有办法根据以前的需要格式化抛出异常的显示输出?

.net c# exception try-catch

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

TeamCity 8中的DotCover不起作用

我尝试使用我的NUnit测试运行dotCover,在TeamCity 8中作为构建步骤.但是没有遇到我尝试的东西我总是在日志文件中得到相同的错误:

步骤4/4:覆盖范围(NUnit)(1s)
[步骤4/4]开始:目录中的C:\ TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit
[步骤4/4] :C:\ TeamCity\buildAgent\work\6aee0f0d2626793d
[步骤4/4] ## teamcity [importData type ='dotNetCoverage'tool ='dotcover'file ='C:\ TeamCity\buildAgent\temp\buildTmp\coverage_dotcover3226256377023598081.data' ]
[步骤4/4]使用'dotNetCoverage'处理器从'C:\ TeamCity\buildAgent\temp\buildTmp\coverage_dotcover3226256377023598081.data'导入数据
[步骤4/4]拒绝覆盖率报告文件:C:\ TeamCity\buildAgent\temp\buildTmp\coverage_dotcover3226256377023598081.data size:0.文件为空或不存在
[步骤4/4]进程退出代码-2146232576
[步骤4/4]步骤覆盖率(NUnit)失败

我曾尝试使用TeamCity dotCover中包含的内容和单独安装的dotCover,但两者都失败并出现相同的错误.

我的配置:

NUnit测试+覆盖配置

如果我选择无覆盖工具,那么测试本身就可以正常工作.但是如果选择了dotCover,我总会得到同样的错误.

这里的任何帮助将不胜感激.

c# teamcity nunit build dotcover

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

为具有依赖项的共享库安装 EXPORT 问题

我尝试从一个项目构建两个库(比如AB)。我add_subdirectory在根 cmake 文件中使用cmake 命令。B取决于A

当我尝试添加

INSTALL (TARGETS B EXPORT B
    PUBLIC_HEADER DESTINATION "include/B"
    LIBRARY DESTINATION "lib"
    ARCHIVE DESTINATION "lib")

INSTALL (EXPORT B DESTINATION "./")
Run Code Online (Sandbox Code Playgroud)

CMake 警告我有关错误与INSTALL (EXPORT .... 它打印:

CMake 错误:安装(导出“B”...)包括目标“B”,它需要目标“A”不在导出集中。

dependencies export cmake

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

新的Application Initialization 1.0不适用于Win 2008 r2,IIS 7.5

我尝试在Win 2008 R2,IIS 7.5和Windows 7,IIS 7上使用应用程序初始化.它无法按预期工作.我下载了x64版本.

来自applicationhost.config:

<applicationPools>     
    <add name="MyApp" autoStart="true" 
        startMode="AlwaysRunning" 
        managedRuntimeVersion="v4.0"> 
</applicationPools>

<sites> 
    <site name="Default Web Site" id="1" serverAutoStart="true">
        <application path="/MyApp" applicationPool="MyApp"
            preloadEnabled="true">
    </site>
</sites>
Run Code Online (Sandbox Code Playgroud)

申请web.config文件:

<system.webServer>
    <applicationInitialization remapManagedRequestsTo="loading.html" 
        skipManagedModules="true">
        <add initializationPage="/default.aspx" />
    </applicationInitialization>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

它没有任何影响.当我重新启动IIS并在浏览器(localhost/.../default.aspx)中加载URL时,它没有显示该loading.html页面,看起来appPool似乎总是在运行\预热.

此外,它没有显示w3p进程的多个实例.它不起作用.

在Windows 7,IIS 7或Windows 2008 R2,IIS 7.5上配置应用程序初始化模块的小视频会有所帮助,因为我可能错过了一些内容.

iis-7.5

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

为什么VS警告我typeof(T)在类型参数被限制为实现T的泛型方法中永远不是提供的类型?

我希望这个问题是正确的,所以让我们举个例子.想象一下以下通用方法:

public abstract class Base : IDisposable
{
    public static IEnumerable<T> GetList<T>()
        where T : Base
    {
        // To ensure T inherits from Base.
        if (typeof(T) is Base)
            throw new NotSupportedException();

        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

根据MSDN,关键字where将类型参数限制T为类型Base或从此类继承.

[...] where子句可包括一个基类约束,其中指出一个类型必须具有指定的类作为基类(或是类本身),以被用作用于该通用类型的类型参数.

此代码也编译:

public static T GetFirst()
    where T : Base
{
    // Call GetList explicitly using Base as type parameter.
    return (T)GetList<Base>().First();
}
Run Code Online (Sandbox Code Playgroud)

所以当关注最后一个代码时typeof(T)应该返回Base,不应该吗?为什么Visual Studio会向我发出此警告?

警告CS0184:给定的表达式永远不是提供的('Demo.Base')类型.

c# generics visual-studio type-parameter

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

"编译时间"和"运行时间"有什么区别?

我不明白术语"编译时间"和"运行时间"(或"运行时")的含义.

我对"价值类型"和"参考类型"的含义以及它们与上述时间的关系有点困惑.

有人请解释这些事吗?

.net definition

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