有没有人知道如何使用System.ComponentModel DefaultValue属性为DateTime属性指定默认值?
例如我试试这个:
[DefaultValue(typeof(DateTime),DateTime.Now.ToString("yyyy-MM-dd"))]
public DateTime DateCreated { get; set; }
Run Code Online (Sandbox Code Playgroud)
并且它期望值是一个恒定的表达式.
这是在使用ASP.NET动态数据的上下文中.我不想构建DateCreated列,但只是提供DateTime.Now,如果它不存在.我使用实体框架作为我的数据层
干杯,
安德鲁
这在我之前没有发生过,但由于某种原因,客户端和服务器端验证事件都没有被触发:
<asp:TextBox ID="TextBoxDTownCity" runat="server" CssClass="contactfield" />
<asp:CustomValidator ID="CustomValidator2" runat="server" EnableClientScript="true"
ErrorMessage="Delivery Town or City required"
ClientValidationFunction="TextBoxDTownCityClient"
ControlToValidate="TextBoxDTownCity"
OnServerValidate="TextBoxDTownCity_Validate" Display="Dynamic" >
</asp:CustomValidator>
Run Code Online (Sandbox Code Playgroud)
服务器端验证事件:
protected void TextBoxDTownCity_Validate(object source, ServerValidateEventArgs args)
{
args.IsValid = false;
}
Run Code Online (Sandbox Code Playgroud)
客户端验证事件:
function TextBoxDCountyClient(sender, args) {
args.IsValid = false;
alert("test");
}
Run Code Online (Sandbox Code Playgroud)
我认为至少Server Side验证会激活但不会.这在我之前从未发生过.这真让我难过.
我查看了输出,ASP.NET正在识别客户端功能:
ASP.NET JavaScript输出:
var ctl00_ctl00_content_content_CustomValidator2 = document.all ? document.all["ctl00_ctl00_content_content_CustomValidator2"] : document.getElementById("ctl00_ctl00_content_content_CustomValidator2");
ctl00_ctl00_content_content_CustomValidator2.controltovalidate = "ctl00_ctl00_content_content_TextBoxDTownCity";
ctl00_ctl00_content_content_CustomValidator2.errormessage = "Delivery Town or City required";
ctl00_ctl00_content_content_CustomValidator2.display = "Dynamic";
ctl00_ctl00_content_content_CustomValidator2.evaluationfunction = "CustomValidatorEvaluateIsValid";
ctl00_ctl00_content_content_CustomValidator2.clientvalidationfunction = "TextBoxDTownCityClient";
Run Code Online (Sandbox Code Playgroud)
渲染自定义验证器:
<span id="ctl00_ctl00_content_content_CustomValidator2" style="color:Red;display:none;">Delivery Town …Run Code Online (Sandbox Code Playgroud) 我可以使用Cruise Control .NET(ccnet)查询服务器的API,例如获取各种构建的状态吗?
我注意到ccnet托盘应用程序中有一些选项可供连接,但我找不到服务API的任何文档或如何使用它的示例.
使用以下简单文件:
using System;
public class Program{
[STAThread]
public static void Main(string[] args){
Console.WriteLine("Boo");
}
}
Run Code Online (Sandbox Code Playgroud)
然后使用以下命令:
csc /target:exe /debug:pdbonly HelloWorld.cs
Run Code Online (Sandbox Code Playgroud)
如果运行此命令且PDB尚不存在,则PDB文件大小为12KB.否则,如果PDB文件存在,则新文件大小为14KB.
Microsoft (R) Visual C# Compiler version 4.0.30319.17929
.NET 4.5
Run Code Online (Sandbox Code Playgroud)
有什么想法可以解释这个吗?
更新:
在冒险创建一个之前,我想知道是否有人知道一个实用程序,它将采用WCF Rest服务的REST帮助页面并为C#消费创建相关的客户端.
类似于svcutil.exe对WCF服务的作用或wsdl.exe对Web服务的作用,但对于WCF REST服务的作用
亲切的问候,
安德鲁
编辑更多细节:
请看这个链接:http://msdn.microsoft.com/en-us/library/dd203052.aspx
在使用WCF Rest Starter Kit Preview 2的restful服务中,它们提供将被序列化的类型.但我的目的是能够在描述模式的帮助页面中创建客户端.然后可以为C#,JavaScript,ActionScript等创建客户端.剪切地作为宁静服务的强类型版本,而不是要求或必要性.这是一个我想知道存在的程序或实体
给出以下代码:
#pragma once
class B
{
public:
B(void)
{
}
~B(void)
{
}
};
Run Code Online (Sandbox Code Playgroud)
我知道我也可以这样写:
#pragma once
class B
{
public:
B()
{
}
~B()
{
}
};
Run Code Online (Sandbox Code Playgroud)
void在第一个例子中有什么目的?是否某种类型的实践表明构造函数采用零参数?
在DDD领域,我喜欢避免getter和setter完全封装组件的想法,因此唯一允许的交互是通过行为构建的交互.将此与事件采购相结合,我可以获得有关已采取行动以及何时使用组件的良好历史记录.
我一直在考虑的一件事是,我想创建一个到底层服务的宁静网关.出于示例的目的,假设我有一个具有以下方法的Task对象,
ChangeDueDate(DateTime date)ChangeDescription(string description)AddTags(params string[] tags)Complete()现在显然我将在此对象中包含实例变量来控制在调用相关方法时将触发的状态和事件.
回到REST服务,我看到它的方式有3个选项:
http://127.0.0.1/api/tasks/{taskid}/changeduedatehttp://127.0.0.1/api/tasks/{taskid}/commandsChangeDueDate 命令ChangeDescription 命令http://127.0.0.1/api/tasks/{taskid}现在看着这个,我觉得第二种选择看起来是最好的,但我想知道其他人的想法是什么,如果有一种已知的真正的宁静方式来处理这类问题.我知道第二种选择,从TDD的角度来看这将是一次非常好的体验,而且从性能的角度来看,因为我可以将行为的变化组合到单个请求中,同时仍然跟踪变化.
第一个选项肯定是显式的,但如果需要调用许多行为,则会产生多个请求.
第三个选项听起来并不坏,但我意识到需要一些可以考虑不同属性类型,嵌套等的干净实现.
感谢您的帮助,真正让我的头脑陷入分析瘫痪.只是喜欢一些关于其他人认为是选项的最佳方式的建议,或者我是否错过了一个技巧.
所以我仍然在问这个话题:-(
所以我创建了一个对象,用Xml序列化属性来装饰它,从我看到的我添加一个空的命名空间到xml序列化namepsace集合,以便不获取我不想要的多余属性.
编辑:我的意思是这些属性:
<url xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns="">
Run Code Online (Sandbox Code Playgroud)
所以它给了我两个额外的属性.
经过进一步调查,如果我改变文件的开头:**
writer.WriteStartElement("urlset","http://www.sitemaps.org/schemas/sitemap/0.9");
Run Code Online (Sandbox Code Playgroud)
至
writer.WriteStartElement("urlset");
Run Code Online (Sandbox Code Playgroud)
**然后我没有在url标签中获得空的xmlns =""属性.这很好但是我确实需要根元素xmlns="http://www.sitemaps.org/schemas/sitemap/0.9",即:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
Run Code Online (Sandbox Code Playgroud)
但我仍然xmlns=""在序列化类型中获得一个空属性.
[XmlRoot(ElementName = "url", Namespace="")]
public class SitemapNode
{
[XmlElement(ElementName = "loc")]
public string Location { get; set; }
[XmlElement(ElementName = "lastmod")]
public DateTime LastModified { get; set; }
[XmlElement(ElementName = "changefreq")]
public SitemapChangeFrequency ChangeFrequency { get; set; }
[XmlElement(ElementName = "priority")]
public decimal Priority { get; set; }
public SitemapNode()
{
Location = String.Empty;
LastModified = DateTime.Now;
ChangeFrequency …Run Code Online (Sandbox Code Playgroud) 我正在尝试MOQ框架,现在我已经遇到了障碍.以下单元测试失败,因为ViewName属性的实际值是空字符串.
任何人都可以指出我正确的方向,为什么这不通过测试?
[TestMethod]
public void Can_Navigate_To_About_Page()
{
var request = new Mock<HttpRequestBase>();
request.Setup(r => r.HttpMethod).Returns("GET");
var mockHttpContext = new Mock<HttpContextBase>();
mockHttpContext.Setup(c => c.Request).Returns(request.Object);
var controllerContext = new ControllerContext(mockHttpContext.Object,
new RouteData(),
new Mock<ControllerBase>().Object);
var controller = new HomeController();
controller.ControllerContext = controllerContext;
var result = controller.About() as ViewResult;
Assert.AreEqual("About", result.ViewName);
}
Run Code Online (Sandbox Code Playgroud)
以下还会产生一个空的ViewName.
HomeController controller = new HomeController();
ViewResult result = controller.About() as ViewResult;
Assert.IsNotNull(result);
Assert.AreEqual("About", result.ViewName);
Run Code Online (Sandbox Code Playgroud)
从网上展示模拟和良好TTD的例子我只是对于我需要做出上述第一个单元测试示例工作的其他管道工作感到困惑.
干杯,
安德鲁
我正在尝试在Windows上构建ry / v8worker2。一切正常,直到我运行为止go test,然后抱怨pkg-config设置。
这是生成的pkg-config文件:
Name: v8
Description: v8
Version: xxx
Cflags: -IC:\Users\andyrea\go\src\github.com\reaandrew\v8worker2\v8\include
Libs: out/v8build/obj/v8_monolith.lib
Run Code Online (Sandbox Code Playgroud)
这go test是执行时的输出:
go build github.com/reaandrew/v8worker2: invalid flag in pkg-config --libs: out/v8build/obj/v8_monolith.lib
FAIL github.com/reaandrew/v8worker2 [build failed]
Run Code Online (Sandbox Code Playgroud)
就像我说的那样,整个编译过程都很好,并且创建了文件,但是最后有些不正确。我尝试对build.py进行的唯一修改,使其在Windows上可以正常运行,如下所示:
diff --git a/build.py b/build.py
index 2cb5e6a..6f482c8 100755
--- a/build.py
+++ b/build.py
@@ -82,7 +82,7 @@ GCLIENT_SOLUTION = [
]
def main():
- lib_fn = os.path.join(prebuilt_path, platform_name(), "libv8_monolith.a")
+ lib_fn = os.path.join(root_path.replace("\\","/"),"/out/v8build/obj/v8_monolith.lib")
if args.rebuild or not os.path.exists(lib_fn):
print("Rebuilding V8")
lib_fn = Rebuild()
@@ -99,9 +99,9 @@ …Run Code Online (Sandbox Code Playgroud) c# ×8
.net ×6
asp.net ×2
rest ×2
api ×1
asp.net-mvc ×1
c ×1
c++ ×1
cgo ×1
csc ×1
ef-core-2.1 ×1
go ×1
moq ×1
pkg-config ×1
v8 ×1
validation ×1
wcf ×1
xml ×1