小编ami*_*t_g的帖子

使用"属性"创建"请求IP"约束

我想做以下(伪代码):

[InternalOnly]
public ActionResult InternalMethod()
{ //magic }
Run Code Online (Sandbox Code Playgroud)

" InternalOnly"属性适用HttpContext于在执行任何其他操作之前应检查请求IP是否已知值的方法.

我该如何创建这个" InternalOnly"属性?

c# asp.net-mvc

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

是否可以将输出发送到bash中的变量?

我有简单命令的结果:

   cp -R SourceDir DestDir >out.txt
   result="out.txt"
Run Code Online (Sandbox Code Playgroud)

但是如果脚本无法访问写入,我如何在变量结果中获得输出?

bash copy

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

数据注释要进行舍入

嗨我在我的一个模型中有一个属性是:

[Required(ErrorMessage = "Total (Exc. GST) is a required field.")]
[Display(Name = "Total (Exc. GST):")]
[DataType(DataType.Currency)]
public virtual decimal TotalExcludingGst { get; set; }
Run Code Online (Sandbox Code Playgroud)

它上面有货币注释.

问题是当它在验证期间发生问题时它会显示4个小数位,例如

57500.0000

无论如何都要添加一个注释,使得这两个小数位在验证消息中?

entity-framework data-annotations

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

使用SignalR时跟踪用户操作

我正在使用SignalR库来创建聊天室,但现在我想跟踪用户操作,例如,如果客户端1正在与客户端2通话,我想显示(...)告诉客户端2客户端1正在编写消息是他们无论如何要做到这一点?

javascript c# signalr

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

用于选择/更新/返回的 SQL Server 存储过程

我正在尝试编写一个 SQL Server 存储过程,该过程从表中选择顶行,更新该行中的列,然后返回包含更改的行。

例如:

  1. row = SELECT TOP 1 FROM Requests
  2. UPDATE Requests SET row.Locked = True
  3. RETURN row

我似乎无法做到这一点......有人能指出我正确的方向吗?

sql-server stored-procedures

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

HtmlHelper.xxxxxxFor重载中的HTML 5数据属性 - 对象htmlAttributes/IDictionary <string,object> htmlAttributes

@Html.TextBoxFor(
    model => model.SomeProperty,
        new { data_url = "http://www.google.com" }
)
Run Code Online (Sandbox Code Playgroud)

被渲染为

<input id="SomeProperty" data-url="http://www.google.com">
Run Code Online (Sandbox Code Playgroud)

我有一些类似于此的自定义扩展

public static MvcHtmlString TextBoxFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, object htmlAttributes, bool disabled)
{
    var htmlAttrs = new RouteValueDictionary(htmlAttributes);

    return TextBoxFor<TModel, TProperty>(htmlHelper, expression, htmlAttrs, disabled);
}

public static MvcHtmlString TextBoxFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, IDictionary<string, object> htmlAttributes, bool disabled)
{
    if (disabled)
    {
        htmlAttributes["disabled"] = true;
    }

    return htmlHelper.TextBoxFor(expression, htmlAttributes);
}
Run Code Online (Sandbox Code Playgroud)

第一过载,其中object htmlAttributes使用htmlAttributes,调用第二过载,其中htmlAttributes被转换到IDictionary<string, object> …

asp.net-mvc html-helper asp.net-mvc-3

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

在foreach/for中构建where子句的延迟查询

在对bug进行故障排除时遇到了这个问题.这似乎是由于延迟执行而查询使用的是变量关键字的最后一个值.建议的解决方案是什么?

var query = from c in dbContext.Cars
            select c;

var keywords = new string[] { "Clean", "Car" };

foreach (var keyword in keywords)
{
    query = query.Where(c => c.Name.Contains(keyword));
}

var cars = query.ToList();
Run Code Online (Sandbox Code Playgroud)

像这样的查询结果(注意两个参数的值是"Car")

exec sp_executesql N'SELECT 
[Extent1].[CarID] AS [MID], 
[Extent1].[Name] AS [Name], 
FROM [dbo].[Cars] AS [Extent1]
WHERE ([Extent1].[Name] LIKE @p__linq__0 ESCAPE N''~'') AND ([Extent1].[Name] LIKE @p__linq__1 ESCAPE N''~'')
',N'@p__linq__0 nvarchar(4000),@p__linq__1 nvarchar(4000)',@p__linq__0=N'%Car%',@p__linq__1=N'%Car%'
Run Code Online (Sandbox Code Playgroud)

LINQPad中的调试也显示相同的查询

DECLARE p__linq__0 NVarChar(1) = '%Car%'
DECLARE p__linq__1 NVarChar(1) = '%Car%'

SELECT 
[Extent1].[CarID] AS [MID], 
[Extent1].[Name] …
Run Code Online (Sandbox Code Playgroud)

c# linq entity-framework entity-framework-4

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


小写除xml标记之外的所有文本

我有大量标记字符串:

watch <TEAM>Philly's</TEAM> Game
what's on <TIME>Wednesday night eight o'clock</TIME>
Run Code Online (Sandbox Code Playgroud)

我想小写除XML标记之外的所有文本.即

watch <TEAM>philly's</TEAM> game
what's on <TIME>wednesday night eight o'clock</TIME>
Run Code Online (Sandbox Code Playgroud)

我可以使用awk小写所有文本:

awk '{print tolower($0)}' file.txt
Run Code Online (Sandbox Code Playgroud)

但不知道如何避免XML标签.欢迎任何语言/工具.

xml linux awk sed

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

iTextSharp acroFields.SetField方法和多个具有相同名称的表单字段

如果多个字段具有相同的名称iTextSharp acroFields.SetField(Name, Value),则仅为第一个字段设置值。如何为其余字段设置值?通过acroFields.Fields循环时,字段名称报告为

form1[0].#subform[0].TextField1[0] - TextField
form1[0].#subform[0].TextField2[0] - TextField
form1[0].#subform[0].TextField2[1] - TextField
form1[0].#subform[0].TextField2[2] - TextField
Run Code Online (Sandbox Code Playgroud)

使用时

acroFields.SetField("TextField1", Value);
Run Code Online (Sandbox Code Playgroud)

设置名为TextField1的文本字段的值。只有一个名为TextField1的字段,所以很好。但是当使用

acroFields.SetField("TextField2", Value);
Run Code Online (Sandbox Code Playgroud)

设置名为TextField2 的第一个文本字段的值。其余两个名为TextField2的字段保持不变。

PDF是使用Adobe LiveCycle创建的,并保存为静态PDF,即不是动态XFA。

pdf pdf-generation itext itextsharp

0
推荐指数
1
解决办法
5747
查看次数

如何将对象列表而不是一个对象传递给POST操作方法

我有以下GET和POST操作方法: -

public ActionResult Create(int visitid)
{
    VisitLabResult vlr = new VisitLabResult();
    vlr.DateTaken = DateTime.Now;
    ViewBag.LabTestID = new SelectList(repository.FindAllLabTest(), "LabTestID", "Description");

    return View();
} 

//
// POST: /VisitLabResult/Create

[HttpPost]
public ActionResult Create(VisitLabResult visitlabresult, int visitid)
{
    try
    {
        if (ModelState.IsValid)
        {
            visitlabresult.VisitID = visitid;
            repository.AddVisitLabResult(visitlabresult);
            repository.Save();
            return RedirectToAction("Edit", "Visit", new { id = visitid });
        }
    }
    catch (DbUpdateException) {

        ModelState.AddModelError(string.Empty, "The Same test Type might have been already created,, go back to the Visit page to see the avilalbe …
Run Code Online (Sandbox Code Playgroud)

actionmethod asp.net-mvc-3

0
推荐指数
1
解决办法
7612
查看次数

检索"我的电脑"中存在的所有pdf文件

我有以下代码从MyComputer检索所有pdf文件.但我得到的错误如下.是否可以使用C#代码从一台计算机中检索所有pdf文件.

string path = Environment.GetFolderPath(Environment.SpecialFolder.MyComputer);            
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(path); // Error : The path is not of a legal form.
IEnumerable<System.IO.FileInfo> fileList = dir.GetFiles("*.pdf", System.IO.SearchOption.AllDirectories);
Run Code Online (Sandbox Code Playgroud)

.net c# filesystems c#-4.0

0
推荐指数
1
解决办法
2306
查看次数

如何基于循环在c#中创建(n)对象

假设我想创建名为DT(n)的(n)DataTables ...我怎样才能在循环中进行此操作.

下面的伪代码

int n=99;

for (int i = 0; i < n; i++)
{
    DataTable DT + n = new DataTable(); // <--- this
}
Run Code Online (Sandbox Code Playgroud)

这可能吗?

c#

0
推荐指数
1
解决办法
198
查看次数