小编Che*_*Cat的帖子

SublimeText 2:选择与搜索词匹配的行

我需要在文件名列表中选择一些行,将它们放在列表的末尾.

假设我有这个列表的Files.txt:

filename1.aaa
filename1.bbb
filename1.ccc
filename2.aaa
filename2.bbb
filename2.ccc
filename3.aaa
filename3.bbb
filename3.ccc
Run Code Online (Sandbox Code Playgroud)

我想选择文件扩展名所在的所有行,ccc然后能够按CTRL-X和CTRL-V将它们放在列表的底部.所以结果必须是这样的:

filename1.aaa
filename1.bbb
filename2.aaa
filename2.bbb
filename3.aaa
filename3.bbb
filename1.ccc
filename2.ccc
filename3.ccc
Run Code Online (Sandbox Code Playgroud)

可能吗?

expression selection textselection sublimetext sublimetext2

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

ASP.NET MVC如何使用ASP.NET成员资格提供程序管理用户内容

我来自5年的ASP.NET Web Forms经验,而且我是ASP.NET MVC的新手.我现在正在尝试使用一些教程,视频教程和书籍来学习MVC.
我正在使用Visual Studio 2012和全新的ASP.NET MVC 4构建一个小型Web应用程序来管理我的共同基金组合.这应该让我进入新模式并学习很多新东西......
我的应用程序也应该让其他朋友也这样做.因此,它必须管理不同用户的投资组合.
我已经用Entity Framework Code First构建了一个小数据库,因此我有一些基本模型:基金,投资组合,股票,存款,来源和用户.一个用户可以拥有许多投资组合,其中包含许多资金.每个用户都有自己的存款清单.每个基金都有很多股票价值(一天/天).
Source模型只是一个表格,我为每个网站源码放置一个URL,用于特定基金的股票数据.因此,一个基金有很多来源.然后我使用刮刀类每天从这些网站获取数据.
这是应用程序的主要结构.现在,我需要知道最好的方法是什么:

1)管理用户的帐户.
我应该在我的数据库上集成ASP.NET Membership DB结构并使用它而不是我的自定义User表来管理用户吗?

2)管理用户内容:投资组合,资金等 .MVC模式中最简单,最优雅的方式
是什么,实现身份验证和所有授权验证,以使用户获得自己的数据?我是否需要在每个控制器上的每个操作中检查这个?

换句话说,我如何实现我的控制器?例如:

[Authorize]
public class PortfolioController : Controller
{
    private FundMonitorContext db = new FundMonitorContext();

    public ActionResult Index()
    {
        // Check user ID and give back to the view only his portfolios...

        var portfolio = db.Portfolios.List();
        return View(portfolio.ToList());
    }

    ...

    public ActionResult Details(int id = 0)
    {
        ...
    }

    //Other …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc authorization asp.net-membership user-management user-generated-content

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

C# DynamoDB 复杂类型 IList<T> 转换器

我需要将IList<MyCustomType>as添加DynamoDBProperty到 DynamoDB 表中,其项目由类定义MyTableItem

使用此AWS 文档页面中的信息,我实现了转换器 for MyCustomType(not for IList<MyCustomType>)。但是当创建一个新的时,MyTableItem我注意到该ToEntry()方法接收一个类型IList<MyCustomType>而不是MyCustomType.

阅读文档我了解到列表(ListIList,或一般的集合)是由 DynamoDB 自动处理的...

我怎样才能达到预期的结果?

这是代码:

// MyTableItem
[Serializable]
public class MyTableItem
{
    [DynamoDBHashKey]
    public string Id { get; set; }

    [DynamoDBProperty]
    public string Field1 { get; set; }

    [DynamoDBProperty]
    public string Field2 { get; set; }

    // List of MyCustomType objects
    [DynamoDBProperty(typeof(MyCustomTypeConverter))]
    public IList<MyCustomType> CustomField { get; set; } …
Run Code Online (Sandbox Code Playgroud)

c# list converter amazon-web-services amazon-dynamodb

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

NSwag .NET Core API版本控制配置

我想准备我的.NET Core Web API项目,以便可以根据REST服务标准来管理和记录API的多个版本。

我正在使用带有NSwag(v11.18.2)的.NET Core 2.1。我还安装了Microsoft.AspNetCore.Mvc.Versioning NuGet程序包。

我已经在Google上搜索了一些配置示例,但是我发现的唯一有用的链接是this

现在,我可以获取两个API版本的Swagger页面,但存在一些问题:

  1. 请注意,没有最后config的设置(TitleDescription在任何2路等)生效。仅当我将它们添加到每个单独的配置中时,它才起作用。因此,我也想知道是否有可能避免这种情况,因为API的常规配置可以是版本无关的(标题,说明等...)。
  2. 由于上述链接中讨论的NSwag和Microsoft API Versioning软件包的问题是在2-3个月前打开的(并且也是NSwag版本),所以我想知道它是否现在已真正解决,在这种情况下,即正确的配置设置。
  3. 尽管该版本在控制器的配置中是明确的,但仍需要将其作为控制器方法的强制输入参数,当然我不希望这样做!见图片:

Swagger UI测试需要版本作为方法的输入参数

因此,通过该示例,我的实际配置如下所示:

public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc();
    services.AddApiVersioning(options =>
        {
            options.AssumeDefaultVersionWhenUnspecified = true;
            options.DefaultApiVersion = new ApiVersion(1, 0);
            options.ReportApiVersions = true;
        });
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    app.UseSwaggerWithApiExplorer(config =>
    {
        config.GeneratorSettings.OperationProcessors.TryGet<ApiVersionProcessor>().IncludedVersions = new[] { "1.0" };
        config.SwaggerRoute = "v1.0.json";
    });

    app.UseSwaggerWithApiExplorer(config =>
    {
        config.GeneratorSettings.OperationProcessors.TryGet<ApiVersionProcessor>().IncludedVersions = new[] { "2.0" …
Run Code Online (Sandbox Code Playgroud)

c# .net-core api-versioning asp.net-core-webapi nswag

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

带有 CASE WHEN EXISTS 子查询优化的 Oracle SQL 查询

我正在使用以下查询在Oracle 11g (11.2.0.3.0) 中创建视图。

CREATE OR REPLACE FORCE VIEW V_DOCUMENTS_LIST
(
   ID_DOC,
   ATTACHMENTS_COUNT,
   TOTAL_DIMENSION,
   INSERT_DATE,
   ID_STATE,
   STATE,
   ID_INSTITUTE,
   INSTITUTE,
   HASJOB
)
AS
    SELECT D.ID_DOC,
        COUNT (F.ID_FILE) AS ATTACHMENTS_COUNT,
        CASE
           WHEN SUM (F.DIMENSION) IS NULL THEN 0
           ELSE SUM (F.DIMENSION)
        END
           AS TOTAL_DIMENSION,
        D.INSERT_DATE,
        D.ID_STATE,
        S.STATE_DESC AS STATE,
        D.ID_INSTITUTE,
        E.NAME AS INSTITUTE,
        CASE
           WHEN EXISTS (SELECT D.ID_DOC FROM JOB) THEN 'true'
           ELSE 'false'
        END
           AS HASJOB
    FROM DOCUMENTS D
        LEFT JOIN FILES F ON D.ID_DOC = F.ID_DOC
        JOIN STATES …
Run Code Online (Sandbox Code Playgroud)

oracle subquery query-optimization select-case

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

ASP.NET Chart控件从X轴标签上的int值设置月份名称

我想用相应的月份名替换图表X轴上的数字(1,2,3,...).

这是我的实际图表:

实际图表

DataView填充,Series我有"MONTH"列,其中包含从1到12的值.我还必须手动将MinimumMaximum值设置为0和13,否则我将丢失第一列和最后一列,因为它们之间缺少空间第一个X轴列和Y轴的起点以及图表区域的最后一个X轴列末端之间.

<ChartAreas>
    <asp:ChartArea Name="ChartArea1">
        <AxisX IsStartedFromZero="True" Title="Mese"
            TitleFont="Segoe UI, 10pt, style=Bold" IsLabelAutoFit="False" LineColor="Gray"
            Minimum="0" Maximum="13">
            <MajorGrid LineColor="LightGray" />
            <LabelStyle Font="Segoe UI, 9pt" />
        </AxisX>
    </asp:ChartArea>
</ChartAreas>
Run Code Online (Sandbox Code Playgroud)

因此,如果我用月份名称替换int值,我还需要删除Min和Max参数,但我想保留现在的空间.

我尝试了在这里和其他地方建议的一些解决方案,但没有结果.最简单,最有效和最直接的似乎是:

Chart1.ChartAreas[0].AxisX.LabelStyle.Format = "MMM";
Run Code Online (Sandbox Code Playgroud)

但它不起作用.相反,我得到"MMM"字符串代替整数值.

是否可以DataBind像在GridView上一样拦截事件,用月份名称替换整数值?

asp.net formatting mschart axis-labels

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

RestSharp无法正确反序列化JSON

我正在使用RestSharp来使用REST Web服务。我实现了自己的Response对象类,以与RestSharp中集成的自动序列化/反序列化一起使用。

我还添加了一个可以正常工作的枚举映射。

此类的问题是,当我发送正确的请求时,我会返回正确的响应,因此Response.Content包含了我期望的内容,但是反序列化过程无法正常工作。

响应内容

{
    "resultCode": "SUCCESS",
    "hub.sessionId": "95864537-4a92-4fb7-8f6e-7880ce655d86"
}
Run Code Online (Sandbox Code Playgroud)

ResultCode属性已正确映射到ResultCode.SUCCESS枚举值,但该HubSessionId属性始终为,null因此似乎未进行反序列化。

我看到的唯一可能的问题是带有'。'的JSON PropertyName。在名字里。可能是问题吗?这与不是Newtonsoft.Json的新JSON序列化程序有关吗?我该如何解决?

更新

我发现Json Attributes被完全忽略,[JsonConverter(typeof(StringEnumConverter))]。因此,我认为枚举映射由默认的Serializer自动执行,没有任何属性。“ hub.sessionId”属性的问题仍然存在。

这是我的代码

public class LoginResponse
{
    [JsonProperty(PropertyName = "resultCode")]
    [JsonConverter(typeof(StringEnumConverter))]
    public ResultCode ResultCode { get; set; }

    [JsonProperty(PropertyName = "hub.sessionId")]
    public string HubSessionId { get; set; }
}

public enum ResultCode
{
    SUCCESS,
    FAILURE
}

// Executes the request and deserialize the JSON to the corresponding
// Response object …
Run Code Online (Sandbox Code Playgroud)

c# rest serialization json restsharp

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

Unity DI Container RegisterType 方法打破了从 v5.8.x 到 v5.9.x 的变化

我在我的 .NET Core 2.1 项目上使用了Unity DI Container v5.8.4,我需要注册Mediator对象,我正在使用这里建议的配置。

现在我已经更新到v5.9.4并且我有一个关于RegisterType方法参数的错误:

无法从“Unity.Lifetime.LifetimeManager”转换为“Unity.Injection.InjectionMember”

这是我的实际代码:

public static IUnityContainer RegisterMediator(this IUnityContainer container, LifetimeManager lifetimeManager)
{
    return container.RegisterType<IMediator, Mediator>(lifetimeManager)
        .RegisterInstance<ServiceFactory>(type =>
        {
            var enumerableType = type
                .GetInterfaces()
                .Concat(new[] { type })
                .FirstOrDefault(t => t.IsGenericType && t.GetGenericTypeDefinition() == typeof(IEnumerable<>));

            return enumerableType != null
                ? container.ResolveAll(enumerableType.GetGenericArguments()[0])
                : container.IsRegistered(type)
                    ? container.Resolve(type)
                    : null;
        });
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能更新注册码?

dependency-injection unity-container .net-core mediatr

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