我知道在stackoverflow上有很多与相同主题相关的问题,但在这里我有一些不同的问题:
我用的installer class到reserve a port和bind it with hash上win7/Winxp:
if (Environment.OSVersion.Version.Major > 5)
{
startInfo.Arguments = @"/c netsh http add urlacl url=https://127.0.0.1:8083/ user=EVERYONE";
netsh http add sslcert ipport=127.0.0.1:8083 certhash=df03c4b0b32f3302a3b70abe6b5dfd864d0986a5 appid={00112233-4455-6677-8899-CCBBCCDDEEFF} clientcertnegotiation=enable;
}
else
{
startInfo.Arguments = @"/c httpcfg set urlacl /u https://127.0.0.1:8083/";
httpcfg set ssl -i 127.0.0.1:8083 -h df03c4b0b32f3302a3b70abe6b5dfd864d0986a5 -f 2
}
Run Code Online (Sandbox Code Playgroud)
代码没有问题setup project.一切正常,除了以下几点:
exe上win7它运行WCF成功的web服务.每当我WinXP(SP#)在我的本地机器上使用它时会抛出一个错误:
错误107(net :: ERR_SSL_PROTOCOL_ERROR):SSL协议错误
但是当我使用teamviewer登录任何WinXp虚拟机时,它运行成功.
怎么可能,我试了好几次但得到了同样的结果.它运行在Xp(在VM上运行)但不在真正的XP机器上运行? …
我有一个表单,从JSON NumberField获取类型的值float.如果值恰好是整数,则不显示小数位.我想一直显示2位小数.这有配置选项吗?
这是我的声明:
items: [
{
fieldLabel: 'Net Sales',
name: 'netSales',
allowBlank:false,
decimalPrecision:2
},
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个像这样的Razor web帮助器:
@helper DisplayForm() {
@Html.EditorForModel();
}
Run Code Online (Sandbox Code Playgroud)
但是这给出了错误"CS0103: The name 'Html' does not exist in the current context".
有没有办法在Web帮助器中引用html助手?
我正在构建一个库,它调用返回JSON的服务器.我希望能够测试这个库.这将需要我的测试代码调用返回JSON的工作服务器.有谁知道适合此目的的服务器?
假设我们有一个UI,在这个UI中我们有一个下拉列表.此下拉列表中填充了枚举的翻译值.
鞠躬,我们可以按枚举的int值,枚举的名称和枚举的翻译名称进行排序.
但是如果我们想要一个与上面提到的3不同的排序呢.如何处理这样的要求?
尝试从WinForms应用程序打印时遇到2个问题.无论我尝试什么,第一个是非常糟糕的质量.第二个是我左上角有一个很大的页边距,而winform正在切割.有任何想法吗?这是我的代码:
Bitmap MemoryImage;
public void GetPrintArea(Panel pnl)
{
MemoryImage = new Bitmap(pnl.Width, pnl.Height);
Rectangle rect = new Rectangle(0, 0, pnl.Width, pnl.Height);
pnl.DrawToBitmap(MemoryImage, new Rectangle(0, 0, pnl.Width, pnl.Height));
}
protected override void OnPaint(PaintEventArgs e)
{
if (MemoryImage != null)
{
e.Graphics.DrawImage(MemoryImage, 0, 0);
base.OnPaint(e);
}
}
void printdoc1_PrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
e.Graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBilinear;
e.Graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
Rectangle pagearea = e.PageBounds;
e.Graphics.DrawImage(MemoryImage, (pagearea.Width / 2) - (this.panel1.Width / 2), this.panel1.Location.Y);
}
public void Print(Panel pnl)
{
panel1 …Run Code Online (Sandbox Code Playgroud) 我CsvHelper用来读取和写入CSV文件很棒,但我不明白如何只写入选定的类型字段.
说我们有:
using CsvHelper.Configuration;
namespace Project
{
public class DataView
{
[CsvField(Name = "N")]
public string ElementId { get; private set; }
[CsvField(Name = "Quantity")]
public double ResultQuantity { get; private set; }
public DataView(string id, double result)
{
ElementId = id;
ResultQuantity = result;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我们希望CsvField从当前生成的CSV文件中排除"数量" ,例如:
using (var myStream = saveFileDialog1.OpenFile())
{
using (var writer = new CsvWriter(new StreamWriter(myStream)))
{
writer.Configuration.Delimiter = '\t';
writer.WriteHeader(typeof(ResultView));
_researchResults.ForEach(writer.WriteRecord);
}
}
Run Code Online (Sandbox Code Playgroud)
我可以使用什么来动态地从CSV中排除类型字段?
如果有必要,我们可以处理生成的文件,但我不知道如何删除整个CSV列CsvHelper.
我正在尝试使用CSVhelper插件来读取上传的CSV文件.这是我的modelBinder类:
public class SurveyEmailListModelsModelBinder : DefaultModelBinder
{
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var csv = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
var file = ((csv.RawValue as HttpPostedFileBase[]) ?? Enumerable.Empty<HttpPostedFileBase>()).FirstOrDefault();
if (file == null || file.ContentLength < 1)
{
bindingContext.ModelState.AddModelError(
"",
"Please select a valid CSV file"
);
return null;
}
using (var reader = new StreamReader(file.InputStream))
using (var csvReader = new CsvReader(reader))
{
return csvReader.GetRecords<SurveyEmailListModels>().ToArray();
}
}
}
Run Code Online (Sandbox Code Playgroud)
这些是我想要映射到的对象:
public class SurveyEmailListModels
{
[Key]
[CsvField(Ignore = true)]
public int SurveyEmailListId { get; …Run Code Online (Sandbox Code Playgroud) 我试图发布一个ASP.NET网站并收到以下警告:
Could not read state file "obj\Debug\Helpers.csprojResolveAssemblyReference.cache"
这使我无法实际发布网站.关于如何解决这个问题的任何想法?
我正在尝试测试HtmlHelper我编写的一些扩展方法.我的第一个问题是如何创建一个HtmlHelper实例,但我使用这个代码解决了这个问题:
private static HtmlHelper<T> CreateHtmlHelper<T>(T model)
{
var viewDataDictionary = new ViewDataDictionary(model);
var controllerContext = new ControllerContext(new Mock<HttpContextBase>().Object,
new RouteData(),
new Mock<ControllerBase>().Object);
var viewContext = new ViewContext(controllerContext, new Mock<IView>().Object, viewDataDictionary, new TempDataDictionary(), new Mock<TextWriter>().Object);
var mockViewDataContainer = new Mock<IViewDataContainer>();
mockViewDataContainer.Setup(v => v.ViewData).Returns(viewDataDictionary);
return new HtmlHelper<T>(viewContext, mockViewDataContainer.Object);
}
Run Code Online (Sandbox Code Playgroud)
我的几个测试现在工作正常,但有一个测试会引发异常.测试定义如下:
// Arrange
var inputDictionary = CreateDictionary();
var htmlHelper = CreateHtmlHelper(inputDictionary);
// Act
var actualHtmlString = htmlHelper.EditorFor(m => m.Dict, model).ToHtmlString();
...
Run Code Online (Sandbox Code Playgroud)
该EditorFor方法是我的扩展方法.在该方法的某处,进行以下调用:
tagBuilder.MergeAttributes(htmlHelper.GetUnobtrusiveValidationAttributes(expression, metadata));
Run Code Online (Sandbox Code Playgroud)
从我的单元测试执行此代码时,抛出以下异常:
System.NullReferenceExceptionObject reference …Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×2
asp.net-mvc ×2
csv ×2
csvhelper ×2
asp.net ×1
demo ×1
enums ×1
extjs ×1
extjs3 ×1
extjs4 ×1
html-helper ×1
httpcfg.exe ×1
json ×1
printing ×1
publish ×1
razor ×1
ssl ×1
testing ×1
unit-testing ×1
windows-xp ×1
winforms ×1