小编Cri*_*inH的帖子

jQuery datepicker中年份下拉滚动条的问题

我使用jQuery日期选择器来选择申请人的出生日期,但申请人的年龄必须限制在21到100年之间.

为了使选择相对容易,我打开了月份和年份下拉框,并且在英国我已将其本地化.

<script type="text/javascript">
$(function () {
    $(".dp1").datepicker({ changeMonth: true, changeYear: true, dateFormat: 'd MM yy', minDate: '-100y', maxDate: '-21y' });
});
Run Code Online (Sandbox Code Playgroud)

文本框的ASP.NET MVC2 VB.NET代码如下:

<%: Html.TextBox("", If(DirectCast(Model, DateTime) = DateTime.MinValue, String.Empty, ViewData.TemplateInfo.FormattedModelValue), New With {.class = "dp1"})%>
Run Code Online (Sandbox Code Playgroud)

这很好,但年份下拉列表只显示有限的值范围,没有滚动条表示年份列表更长,但滚动条滑块的大小并未给出整个范围的任何视觉线索:

替代文字

如果单击顶部值然后关闭下拉列表,则下次打开它时会显示更多值:

替代文字

这是非显而易见的行为,我偶然偶然发现了它.是否有任何方法可以始终显示滚动条并且滑块大小与范围成反比?如果没有,推荐其他日期选择方法可追溯到一个世纪(实际上是99年就可以)?

对于我正在使用的记录:

  • jQuery的UI-1.8.5
  • jQuery的1.4.1

谢谢

克里斯平

jquery jquery-ui jquery-ui-datepicker

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

VB.NET中MVC3 ViewBag的后期绑定问题

我正在尝试在VB.NET MVC3项目中使用MVC Scaffolding并遇到一个问题,后期绑定与Option Strict设置(我想要它).

这适用于C#:

public ActionResult Create()
{
    ViewBag.PossibleTeams = context.Teams;
    return View();
}
Run Code Online (Sandbox Code Playgroud)

但VB.NET中的代码几乎相同:

Public Function Create() As ActionResult
    ViewBag.PossibleTeams = context.Teams
    Return View()
End Function
Run Code Online (Sandbox Code Playgroud)

导致编译器错误Option Strict On禁止后期绑定.我看了一下这里的文档:http://msdn.microsoft.com/en-us/library/system.web.mvc.controllerbase.viewbag(VS.98).aspx但它不是很有帮助.

我注意到,在C#中的新的空应用程序使用ViewBagHomeController,但VB.NET版本使用ViewData,所以也许这是一个VB.NET的限制.

vb.net viewbag asp.net-mvc-3

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

使用iTextSharp锁定PDF以防止编辑

我使用iTextSharp创建了一个C#程序,用于读取PDF,附加社交DRM内容,然后保存文件.如何锁定此新PDF以防止进一步编辑?

我希望用户能够在不输入密码的情况下查看文件,我不介意选择/复制操作,但我确实能够删除社交DRM.

c# pdf pdf-generation itext

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

MVC项目中的System.Globalization.CultureNotFoundException

在我能记住的所有MVC项目中(我现在在版本3上)我收到错误:

A first chance exception of type 'System.Globalization.CultureNotFoundException' occurred in mscorlib.dll
Run Code Online (Sandbox Code Playgroud)

在项目运行时出现在"调试输出"窗格中.到目前为止,我忽略了它,因为它似乎没有任何区别,但最终我不喜欢出现错误,即使它们没有明显的效果.

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

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

jquery-2.0.0.min.map"未捕获的SyntaxError:意外的令牌:"

自从我在Visual Studio 2012中使用Nuget在ASP.NET MVC4项目中安装了jQuery 1.9和现在的2.0 之后,脚本文件夹中就包含了一个额外的.map文件.我注意到在控制台日志中有一个与jquery-2.0.0.min.map有关的错误,即:

Uncaught SyntaxError: Unexpected token :
Run Code Online (Sandbox Code Playgroud)

它在第1行,但因为这是一个预期的单行文件.

我想摆脱这个错误 - 我真的需要这个.map文件吗?我可以安全地告别它吗?

克里斯平

jquery nuget

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

在 Xunit 集成测试中检索 ASP.NET Core 3.1 数据库上下文

我一直在使用 Xunit 为使用数据库的 .NET Core 3.1 Web 应用程序创建集成测试。为了进行测试,我按照Microsoft 文档切换到内存数据库。CustomWebApplicationFactory代码是:

public class CustomWebApplicationFactory<TStartup> : WebApplicationFactory<TStartup> where TStartup : class
        {
        protected override void ConfigureWebHost(IWebHostBuilder webHostBuilder)
            {
            webHostBuilder.ConfigureServices(services =>
                {
                    // Remove the app's database  registration.
                    var serviceDescriptor = services
                                                .SingleOrDefault(d => d.ServiceType == typeof(DbContextOptions<MyDbContext>));

                    if (serviceDescriptor != null)
                        {
                        services.Remove(serviceDescriptor);
                        }

                    // Add MyDbContext using an in-memory database for testing.
                    services.AddDbContext<MyDbContext>(options =>
                    {
                        options.UseInMemoryDatabase("InMemoryDbForTesting");
                    });

                    var servicesProvider = services.BuildServiceProvider();

                    // Create a scope to obtain a reference …
Run Code Online (Sandbox Code Playgroud)

c# integration-testing xunit asp.net-core-3.1

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

将JSON数据从Chrome浏览器扩展发布到MVC控制器

我编写了一个Chrome浏览器扩展程序,它使用Ajax将数据发布到MVC3控制器.为了确保控制器代码有效,我首先编写了一个Razor网页来对ajax代码进行原型设计.此代码适用于网页,JSON模型绑定所有.我将它发布到一个完整的DNS主机和域名的IIS7服务器上.代码仍然适用于测试页面.

function addUrl()
{
$('#res').html('Adding...');
var myData = { url: $('#urlDiv').html(), comments: $('#c1').val() };

$.ajax(
        {
        url: 'http://hostname.domainname/ControllerName/AddUrl',
        type: "post",
        dataType: "json",
        data:JSON.stringify(myData),
        contentType: "application/json; charset=utf-8",
        success: function (result) 
            {
            $('#res').html(result);
            },
        error: function()
            {
            $('#res').html('An error occurred');
            }
        }
    );  
};
Run Code Online (Sandbox Code Playgroud)

我将此jQuery函数复制到Chrome JavaScript文件中,并通过常规表单按钮从弹出窗口调用它.

  <body onload="buildPopupDom();">
<form>
<h2>Add URL</h2>
<div id='urlDiv'></div>
<p>Comments<br /><textarea id="c1" cols="80" rows="3"></textarea></p>
<p><input type="button" value="Save" id="s1" onclick="addUrl();" /> <input type="button" value="Close" onclick="javascript:window.close();" /></p>
</form>
Run Code Online (Sandbox Code Playgroud)

由于某些原因,Chrome扩展程序中的帖子会出现404错误,并且我发现某些MVC3 XSS保护或类似内容阻止了帖子 - 或者IIS7中的某些内容(UrlScan未安装).

jquery json google-chrome-extension asp.net-mvc-3

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

将 ImageUniqueID 插入 JPEG 的 EXIF 数据而不使用 .NET 修改图像

我需要在不修改图像内容的情况下将唯一 ID 插入图像文件 - 即它只是我想要修改的元数据。我从 JPEG 文件开始,因为有一个合适的 EXIF 属性可用:ImageUniqueID

我将 C# 与 .NET Core 3.1 一起用于ImageSharp 的这个练习。我可以使用以下代码使用 ImageSharp 更改 EXIF 数据(在没有现有记录检查的情况下显示简化等):

using (var image = Image.Load(filename))
            {
            var imageUniqueIdentifier = Guid.NewGuid().ToString().ToLower().Replace("-", "");
            image.Metadata.ExifProfile.SetValue(ExifTag.ImageUniqueID, imageUniqueIdentifier);

            var jpegEncoder = new JpegEncoder() { Quality = 100 };
            image.Save(filename, jpegEncoder);
            }
Run Code Online (Sandbox Code Playgroud)

我确实在 JpegEncoder 中使用了 Quality 设置,但仍然遇到了无法接受的质量下降或文件大小增加的问题。

有没有办法只读取元数据,更改它然后将其写回而根本不影响图像?

我还查看了MetadataExtractor.NET,但它没有写入功能,我很乐意查看其他 .NET Core 方法或库。

c# exif imagesharp

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

在VB.NET中转换为List(Of T)

在C#中可以转换为List<T>- 所以如果你有:

List<Activity> _Activities;
List<T> _list;
Run Code Online (Sandbox Code Playgroud)

以下将有效:

_list = _Activities as List<T>;
Run Code Online (Sandbox Code Playgroud)

但用VB.NET翻译的行是:

_list = TryCast(_Activities, List(Of T))
Run Code Online (Sandbox Code Playgroud)

抛出编译错误.所以我有一个很好的搜索并试验LINQ找到一个方法绕过这个无济于事.任何人的想法?

谢谢

克里斯平

vb.net generics casting

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

寻找一个离线库来格式化HTML,我可以使用.NET代码

我必须处理密集格式的HTML中的问题,这些问题实际上是不可读的,所以我想要一个库"漂亮地打印",格式化,美化或者想要在管理这个HTML的.NET应用程序中调用它.

目前我将其复制并粘贴到Visual Studio 2012中并将其格式化,然后将其粘贴回应用程序,但这变得有点单调乏味.

如果它可以有效地扭转过程并在解决问题时去除所有空白区域,那么它也会很方便.

顺便说一下,我知道改变HTML的格式有时会导致意想不到的结果(我正在看着你的IE),但我可以忍受.

html c# vb.net formatting

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