javascript

java

python

c#

android

node.js

c++

reactjs

php

html

jquery

css

.net

ios

git

ruby-on-rails

sql

c

string

ruby

asp.net mvc 3-使URL小写。 任何简单或内置的方式?

是否有任何简单/内置的方式来使MVC3的URL小写。

我有可以做到的代码,但是看起来很容易实现。

 routes.MapRouteLowercase(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "index", id = UrlParameter.Optional } // Parameter defaults
            );

public class LowercaseRoute : Route
    {
        public LowercaseRoute(string url, IRouteHandler routeHandler)
            : base(url, routeHandler)
        {
        }

        public LowercaseRoute(string url, RouteValueDictionary defaults, IRouteHandler routeHandler)
            : base(url, defaults, routeHandler)
        {
        }

        public LowercaseRoute(string url, RouteValueDictionary defaults, RouteValueDictionary constraints, IRouteHandler routeHandler)
            : base(url, defaults, constraints, routeHandler)
        {
        }

        public LowercaseRoute(string url, RouteValueDictionary defaults, RouteValueDictionary constraints, RouteValueDictionary dataTokens, IRouteHandler routeHandler)
            : base(url, defaults, constraints, dataTokens, routeHandler)
        {
        }

        public override VirtualPathData GetVirtualPath(RequestContext requestContext, RouteValueDictionary values)
        {
            VirtualPathData path = base.GetVirtualPath(requestContext, values);

            if (path != null)
            {
                path.VirtualPath = path.VirtualPath.ToLowerInvariant();
            }

            return path;
        }
    }




public static class RouteCollectionExtensions
    {
        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url)
        {
            return routes.MapRouteLowercase(name, url, null /* defaults */, (object)null /* constraints */);
        }

        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url, object defaults)
        {
            return routes.MapRouteLowercase(name, url, defaults, (object)null /* constraints */);
        }

        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url, object defaults, object constraints)
        {
            return routes.MapRouteLowercase(name, url, defaults, constraints, null /* namespaces */);
        }

        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url, string[] namespaces)
        {
            return routes.MapRouteLowercase(name, url, null /* defaults */, null /* constraints */, namespaces);
        }

        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url, object defaults, string[] namespaces)
        {
            return routes.MapRouteLowercase(name, url, defaults, null /* constraints */, namespaces);
        }

        public static Route MapRouteLowercase(this RouteCollection routes, string name, string url, object defaults, object constraints, string[] namespaces)
        {
            if (routes == null)
            {
                throw new ArgumentNullException("routes");
            }
            if (url == null)
            {
                throw new ArgumentNullException("url");
            }

            Route route = new LowercaseRoute(url, new MvcRouteHandler())
            {
                Defaults = new RouteValueDictionary(defaults),
                Constraints = new RouteValueDictionary(constraints),
                DataTokens = new RouteValueDictionary()
            };

            if ((namespaces != null) && (namespaces.Length > 0))
            {
                route.DataTokens["Namespaces"] = namespaces;
            }

            routes.Add(name, route);

            return route;
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url)
        {
            return context.MapRouteLowercase(name, url, (object)null /* defaults */);
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url, object defaults)
        {
            return context.MapRouteLowercase(name, url, defaults, (object)null /* constraints */);
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url, object defaults, object constraints)
        {
            return context.MapRouteLowercase(name, url, defaults, constraints, null /* namespaces */);
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url, string[] namespaces)
        {
            return context.MapRouteLowercase(name, url, (object)null /* defaults */, namespaces);
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url, object defaults, string[] namespaces)
        {
            return context.MapRouteLowercase(name, url, defaults, null /* constraints */, namespaces);
        }

        public static Route MapRouteLowercase(this AreaRegistrationContext context, string name, string url, object defaults, object constraints, string[] namespaces)
        {
            if (namespaces == null && context.Namespaces != null)
            {
                namespaces = context.Namespaces.ToArray();
            }

            Route route = context.Routes.MapRouteLowercase(name, url, defaults, constraints, namespaces);
            route.DataTokens["area"] = context.AreaName;

            // disabling the namespace lookup fallback mechanism keeps this areas from accidentally picking up
            // controllers belonging to other areas
            bool useNamespaceFallback = (namespaces == null || namespaces.Length == 0);
            route.DataTokens["UseNamespaceFallback"] = useNamespaceFallback;

            return route;
        }
    }
trans by 2020-02-21T19:56:08Z

我如何使用自动映射器在两个枚举之间映射?

我有一个面向公众的界面,试图将两个不同的枚举相互映射。 我尝试使用以下代码:

Mapper.CreateMap<Contract_1_1_0.ValidationResultType, Common.ValidationResultType>();

当那行不通时,我尝试了:

Mapper.CreateMap<Contract_1_1_0.ValidationResultType, Common.ValidationResultType>().ConvertUsing(x => (Common.ValidationResultType)((int)x));

但这似乎也不起作用。 无论如何,有没有让automapper处理这种情况?

trans by 2020-02-21T19:51:09Z

子目录-使用Python浏览文件和子文件夹

我想浏览当前文件夹及其所有子文件夹,并获取所有扩展名为.htm | .html的文件。 我发现可以找到一个对象是目录还是文件,如下所示:

import os

dirList = os.listdir("./") # current directory
for dir in dirList:
  if os.path.isdir(dir) == True:
    # I don't know how to get into this dir and do the same thing here
  else:
    # I got file and i can regexp if it is .htm|html

最后,我想将所有文件及其路径放在一个数组中。 这样有可能吗?

trans by 2020-02-21T19:47:47Z

调用基本函数,然后继承函数

我有一个基类和一个继承基类。 基类具有继承的类可以重写的几个虚函数。 但是,基类中的虚函数具有必须在调用继承的类重写之前运行的代码。 有什么方法可以先调用基类虚函数,然后再继承继承的类。 无需调用base.function()。

我知道我可以简单地创建两个函数,一个被调用,另一个虚拟。 但是,有没有办法我也可以保持相同的名字呢? 我知道我可能需要改变一些事情。

class myBase
{
    public virtual myFunction()
        { /* must-run code, Called first */ }
}

class myInherited : myBase
{
    public override myFunction()
        { /* don't use base.myFunction();,
        called from base.myFunction(); */ }
}

类似的问题在这里。

trans by 2020-02-21T19:44:07Z

创建逗号分隔的字符串C#?

我有一个包含许多值的对象,其中一些值(不是该对象的所有值)都需要放入csv字符串中。 我的方法是这样的:

string csvString = o.number + "," + o.id + "," + o.whatever ....

我以某种方式认为有更好,更优雅的方式?

trans by 2020-02-21T19:40:37Z

jQuery-如何获取JSON键和值?

我编写了以下代码来从Web服务获取JSON结果。

function SaveUploadedDataInDB(fileName) {
            $.ajax({
                type: "POST",
                url: "SaveData.asmx/SaveFileData",
                data: "{'FileName':'" + fileName + "'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (response) {
                    var result = jQuery.parseJSON(response.d);
                    //I would like to print KEY and VALUE here.. for example
                    console.log(key+ ':' + value)
                    //Addess : D-14 and so on..
                   }
            });
        }

这是来自webservice的响应:enter image description here

请帮助我打印密钥及其价值

trans by 2020-02-21T19:38:11Z

Laravel-通过自定义列或Fai查找

如果找不到任何内容,则有findOrFail()方法会抛出404,例如:

User::findOrFail(1);

如何通过自定义列查找实体或失败,如下所示:

Page::findBySlugOrFail('about');
trans by 2020-02-21T19:36:11Z

php ini-在php-cli中重新加载php.ini

我有必须从控制台(php-cli)运行的php脚本。 但是针对php-cli的php.ini配置不正确。 我修复了它,但是当我运行脚本时,php config出现了错误,因为php.ini使用了旧的。

如何在不重新启动服务器的情况下为控制台重新加载php.ini?

trans by 2020-02-21T19:34:35Z

如何在android中播放音频文件

我的android手机中有一个mp3文件,让它在我的sdcard中的某个地方是xyz.mp3。如何通过我的应用程序播放它?

trans by 2020-02-21T19:31:50Z

Web服务-SOAP与XML-RPC或REST的性能

关于使用XML-RPC或REST解决方案的简单性的论点易于理解且难以争论。

我也经常听到这样的论点,即SOAP开销增加可能会严重影响已使用的带宽,甚至可能会影响延迟。 我希望看到量化影响的测试结果。 有人知道这种信息的好来源吗?

trans by 2020-02-21T19:26:17Z

PHP对象作为XML文档

采取给定PHP对象并将其序列化为XML的最佳方法是什么? 我正在查看simple_xml,并用它来将XML解析为对象,但是我不清楚它是如何工作的。

trans by 2020-02-21T19:18:57Z

.net-C#:从System.Type动态解析

我有一个类型,一个字符串和一个对象。

有什么方法可以调用parse方法或在字符串上动态转换为该类型?

基本上我该如何删除逻辑中的if语句

object value = new object();    
String myString = "something";
Type propType = p.PropertyType;

if(propType == Type.GetType("DateTime"))
{
    value = DateTime.Parse(myString);
}

if (propType == Type.GetType("int"))
{
    value = int.Parse(myString);
}

并做更多这样的事情。

object value = new object();
String myString = "something";
Type propType = p.PropertyType;


//this doesn't actually work
value = propType .Parse(myString);  
trans by 2020-02-21T19:14:21Z

在并行bash脚本中运行多个脚本

这个问题已经在这里有了答案:

  • 如何从bash脚本并行运行多个程序?                                     13个答案

我有一个bash脚本,其中包含串联运行的其他脚本。 但是,所有这些都需要花费大量的时间来运行。 有没有一种方法可以并行运行这些脚本来提高整体性能? 它们彼此独立。

它看起来类似于:

#!/bin/bash

#some code here
cppcheck.sh
churn.sh
run.sh

更新:

**git log --pretty=format: --numstat | perl -ane'$c{$F[2]} += abs($F[0]+$F[1]) 
if $F[2];END {print "$_\t$c{$_}\n" for sort keys %c}' > ${OUTPUT_DIR}/churn.txt**
sed -i -e '/deps/d;/build/d;/translations/d;/tests/d' -e 30q ${OUTPUT_DIR}/churn.txt
sort -r -n -t$'\t' -k2 ${OUTPUT_DIR}/churn.txt -o ${OUTPUT_DIR}/churn.txt
echo "set term canvas size 1200, 800; set output '${OUTPUT_DIR}/output.html'; 
unset key; set bmargin at screen 0.4; set xtics rotate by -90 scale 0,0; 
set ylabel 'Number of lines changed (total)'; set title 'Files with high churn 
level';set boxwidth 0.7; set style fill solid; set noborder; 
plot '${OUTPUT_DIR}/churn.txt' using 2:xticlabels(1) with boxes" | gnuplot
echo "finished running churn.sh!"

这是churn.sh中的代码。 粗体命令需要40秒钟的时间才能实现。 如果在主脚本中我在churn.sh&之后加上&符,则会引发错误,指出sed无法读取churn.txt文件(因为尚未创建)。 似乎不会等到输出保存到文件中。 我在该命令后插入了wait,但没有帮助。

trans by 2020-02-21T19:12:06Z

值更改时如何触发函数?

我意识到这个问题与事件处理有关,并且我已经了解了Python事件处理程序的调度程序,因此它要么没有回答我的问题,要么我完全错过了信息。

我希望每当值happiness更改时就触发对象Person的方法global_wealth

例如(假设金钱使人高兴):

global_wealth = 0

class Person()
    def __init__(self):
        self.wealth = 0
        global global_wealth
        # here is where attribute should be
        # bound to changes in 'global_wealth'
        self.happiness = bind_to(global_wealth, how_happy)

    def how_happy(self, global_wealth):
        return self.wealth / global_wealth

因此,无论何时更改global_wealth的值,类Person的所有实例都应相应地更改其happiness的值。

注意:由于第一个版本似乎暗示我需要getter和setter方法,因此我不得不编辑问题。 对困惑感到抱歉。

trans by 2020-02-21T19:08:05Z

SQL Server:无法将显式值插入时间戳列

使用此语句时

create table demo (
    ts timestamp
)

insert into demo select current_timestamp

我收到以下错误:

无法将明确的值插入时间戳列。 将INSERT与列列表一起使用以排除timestamp列,或将DEFAULT插入timestamp列

如何将当前时间插入timestamp列?

trans by 2020-02-21T19:02:51Z

c#4.0-如何配置HttpClient收到301 HTTP状态代码后不自动重定向?

考虑重定向的ASP.NET Web API服务

public class ThisController : ApiController
{
    /* more methods */

    public override HttpResponseMessage Post()
    {
        var result = new HttpResponseMessage(HttpStatusCode.MovedPermanently);
        // Post requests should be made to "ThatController" instead.
        string uri = Url.Route("That", null);
        result.Headers.Location = new Uri(uri, UriKind.Relative);
        return result;
    }
}

尝试验证POST'ing数据到“ api / this”会将您重定向到“ api / that”,我有以下测试方法:

[TestMethod]
public void PostRedirects()
{
    using (var client = CreateHttpClient("application/json"))
    {
        var content = CreateContent(expected, "application/json");
        using (var responseMessage = client.PostAsync("api/this", content).Result)
        {
            Assert.AreEqual(HttpStatusCode.MovedPermanently, responseMessage.StatusCode);
            Assert.AreEqual(new Uri("https://api.example.com/api/that"), responseMessage.Headers.Location);
        }
    }
}

protected HttpClient CreateHttpClient(string mediaType)
{
    var client = new HttpClient();
    client.BaseAddress = new Uri("http://api.example.com/");
    MediaTypeWithQualityHeaderValue headerValue = MediaTypeWithQualityHeaderValue.Parse(mediaType);
    client.DefaultRequestHeaders.Accept.Add(headerValue);
    client.DefaultRequestHeaders.AcceptEncoding.Add(StringWithQualityHeaderValue.Parse("gzip"));
    client.DefaultRequestHeaders.AcceptEncoding.Add(StringWithQualityHeaderValue.Parse("deflate"));
    client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(new ProductHeaderValue("MyProduct", "1.0")));
    client.MaxResponseContentBufferSize = 1024*1024*8;
    return client;
}

protected ObjectContent CreateContent(T model, string mediaType)
{
    var requestMessage = new HttpRequestMessage();
    MediaTypeFormatter mediaTypeFormatter = null;
    switch (mediaType)
    {
        case "application/json":
            mediaTypeFormatter = new JsonMediaTypeFormatter();
            break;

        case "application/xml":
        case "text/xml":
            mediaTypeFormatter = new XmlMediaTypeFormatter();
            break;

        default:
            Assert.Fail();
            break;
    }

    return requestMessage.CreateContent(
        model,
        new[] { mediaTypeFormatter },
        new FormatterSelector());
}

真正发生的情况是,将HTTP状态代码和正确的Location标头发送到客户端,然后HttpClient自动对该URI执行GET。 结果,我的测试从未通过。

如何配置HttpClient收到301时不自动重定向,以便可以验证服务器响应?

trans by 2020-02-21T19:01:07Z

浮点-将双精度数字赋给C中的int变量的非直观结果

有人可以给我一个解释,为什么我会得到两种不同数字,分别。 14和15,作为以下代码的输出?

#include <stdio.h>  

int main()
{
    double Vmax = 2.9; 
    double Vmin = 1.4; 
    double step = 0.1; 

    double a =(Vmax-Vmin)/step;
    int b = (Vmax-Vmin)/step;
    int c = a;

    printf("%d  %d",b,c);  // 14 15, why?
    return 0;
}

在这两种情况下,我都希望获得15分,但似乎我缺少该语言的一些基础知识。

我不确定是否相关,但是我正在CodeBlocks中进行测试。 但是,如果我在某个在线编译器中键入相同的代码行(例如,这一行),则对于两个打印变量我得到的答案为15。

trans by 2020-02-21T18:56:12Z

在.NET / C#中将大量记录(批量插入)写入Access

从.NET向MS Access数据库执行批量插入的最佳方法是什么? 使用ADO.NET,写一个大型数据集耗时一个多小时。

请注意,我的原始帖子在“重构”之前,在问题部分中同时包含了问题和答案。 我接受了Igor Turman的建议,并将其分为两部分-上面的问题,然后是我的答案。

trans by 2020-02-21T18:43:26Z

正则表达式中的OR条件

假设我有

1 ABC Street
1 A ABC Street

\d中,它匹配1(我期望),在\d \w中,它匹配1 A(预期)。 现在,我将模式结合在一起\d|\d \w,它仅与第一个匹配,但忽略第二个。

我的问题是在这种特殊情况下如何正确使用或调节?

PS:条件是仅在此后没有单个字母的情况下包装数字,否则包装数字和单个字母。

例如:1个ABC街只匹配数字1,但是当1 A ABC街将1 A换行时

trans by 2020-02-21T18:25:30Z

Jenkins Multibranch管道:分支名称变量是什么?

我是Jenkins Pipeline插件的新手,尤其是多分支管道插件的新手。 在标准构建中,我可以访问$ GIT_BRANCH变量以了解正在构建哪个分支。 但是,该变量未在多分支管道中设置。 我也尝试过env.GIT_BRANCH,并且尝试将$ GIT_BRANCH作为参数传递给构建。 似乎没有任何作用。 我以为既然该构建知道正在构建的分支(我可以在控制台输出的顶部看到该分支的名称,可以使用某些东西,所以我找不到任何引用。)

这是为什么这很重要的一个例子。 我们正在使用gitflow模式。 我们拥有dev,release和master分支,所有这些分支都用于创建构件。 dev分支会自动部署,其他两个则不会。 也有功能,错误修正和修补程序分支。 应该建立这些分支,但不要产生构件。 它们仅用于通知开发人员代码是否有问题。 我需要知道要建立哪个分支才能运行正确的步骤。

任何帮助,将不胜感激。

trans by 2020-02-21T18:06:32Z

上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共3492页