有人可以向我解释为什么GetProperties如果类设置如下,该方法不会返回公共值.
public class DocumentA
{
public string AgencyNumber = string.Empty;
public bool Description;
public bool Establishment;
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试设置一个简单的单元测试方法来玩
该方法如下,它具有所有适当的使用语句和引用.
我正在做的就是调用以下内容,但它返回0
PropertyInfo[] pi = target.GetProperties(BindingFlags.Public | BindingFlags.Instance);
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用私有成员和公共属性设置类,它可以正常工作.
我没有按照旧学校方式设置课程的原因是因为它有61个属性并且这样做会增加我的代码行数至少三倍.我会成为维护的噩梦.
在Delphi IDE中,Delphi安装的路径指定为$(DELPHI).我想知道是否有办法创建自己的路径指标,如$(MY_LIBRARY)或类似的东西.我认为$(DELPHI)被指定为环境变量,但显然不是.有任何想法吗?(我正在使用Delphi 7)
var name = "#floatMenu";
var menuYloc = null;
$(document).ready(function () {
menuYloc = parseInt($(name).css("top").substring(0, $(name).css("top").indexOf("px")))
$(window).scroll(function () {
var offset = menuYloc + $(document).scrollTop() + "px";
$(name).animate({ top: offset }, { duration: 500, queue: false });
});
Run Code Online (Sandbox Code Playgroud)
如何使用jQuery和CSS创建浮动按钮?
问题是VS2010代码分析正在为特定功能返回两个CA2000警告.我没有成功用较小的代码块重现警告,所以我已经完整地发布了原始函数.
public int SaveTransaction( Transaction tx, UserAccount account ) {
if ( tx == null ) {
throw new ArgumentNullException( "tx" );
}
if ( account == null ) {
throw new ArgumentNullException( "account" );
}
bool isRefund = tx.TransactionType == LevelUpTransaction.TransactionTypes.Refund;
int pnRef = 0;
using ( SqlConnection conn = new SqlConnection( DatabaseConfiguration.ConnectionString ) ) {
using ( SqlCommand cmd = new SqlCommand( "dbo.SaveTransaction", conn ) ) {
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add( "@InvoiceId", SqlDbType.VarChar, 100 ).Value = tx.InvoiceNumber;
cmd.Parameters.Add( …Run Code Online (Sandbox Code Playgroud) 在我使用的大多数返回某种集合的方法中,我返回 IEnumerable 而不是特定类型(例如 List)。在许多情况下,我有另一个集合要与结果 IEnumerable 结合,这与使用 AddRange 方法获取一个 List 并添加另一个 List 完全一样。我有以下示例,在其中我创建了一个扩展方法,该方法应该将项目集合添加到基本集合中,同时调试这似乎有效,但在原始集合中从未添加项目。我不明白这一点,为什么不添加它们,是否存在我缺少的 IEnumerable 实现方面的内容?我知道 IEnumerable 是一个只读接口,但我没有在下面的示例中添加到此列表中,我正在替换它,
class Program
{
static void Main(string[] args)
{
var collectionOne = new CollectionContainerOne();
var collectionTwo = new CollectionContainerTwo();
// Starts at 1- 50 //
collectionOne.Orders.AddRange(collectionTwo.Orders);
// Should now be 100 items but remains original 50 //
}
}
public class CollectionContainerOne
{
public IEnumerable<Order> Orders { get; set; }
public CollectionContainerOne()
{
var testIds = Enumerable.Range(1, 50);
var orders = new List<Order>();
foreach (int …Run Code Online (Sandbox Code Playgroud) 如何删除以下XML文档类型末尾的方括号
<!DOCTYPE smil PUBLIC "-//W3C//DTD SMIL 2.0//EN" "http://www.w3.org/2001/SMIL20/SMIL20.dtd"[]>
Run Code Online (Sandbox Code Playgroud)
我有加载XML文件的代码,进行一些更改然后保存文件.
这是原始文件的标题(无方括号):
<!DOCTYPE smil PUBLIC "-//W3C//DTD SMIL 2.0//EN" "http://www.w3.org/2001/SMIL20/SMIL20.dtd">
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,最后没有[] "SMIL20.dtd">"
当我转换文档时,它会创建一对方括号,如下所示"SMIL20.dtd"[]>.
这是一个示例:
class FileWorker
{
public static void UpdateFile(string myfile)
{
var doc = XDocument.Load(myfile);
try
{
foreach (var elem in doc.Elements())
{
if (elem.Name.LocalName == "type")
{
foreach (var child in elem.Elements())
{
if (child.Name.LocalName == "head")
{
foreach (var gc in child.Elements())
{
if (Configuration.Cdntosync == 0)
{
if (gc.Attributes().Any(att => att.Name.LocalName == "name" && att.Value == "httpBase"))
{ …Run Code Online (Sandbox Code Playgroud) 我希望能够将任何C#对象保存在SQL数据库表的单个列中.我不清楚如何将对象转换为varbinary或从varbinary中获取它.我的SystemContextObjects表有一个Varbinary(max)的OptionValue列.
var dc1 = new DataContextDataContext();
var optionUpdate = dc1.SystemContextObjects.SingleOrDefault(o => o.OptionId == OptionId && o.OptionKey == OptionKey);
if (optionUpdate != null)
{
optionUpdate.OptionValue = Value; <===== NEED HELP HERE...
optionUpdate.DateCreated = DateTime.Now;
optionUpdate.PageName = PageName;
var ChangeSet = dc1.GetChangeSet();
if (ChangeSet.Updates.Count > 0)
{
dc1.SubmitChanges();
return;
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用Math.pow()函数,并具有以下代码:
double monthlyRate = (0.7d / 12);
int loanLength = 3;
double powerTest = Math.pow(1.00583, 36);
double powerResult = Math.pow((1 + monthlyRate),(loanLength * 12));
Run Code Online (Sandbox Code Playgroud)
当通过调试器运行时,值变为
powerTest => 1.2327785029794363
powerResult => 7.698552870922063
Run Code Online (Sandbox Code Playgroud)
第一个是正确的.我已经在两个赋值行上进入了Math.pow函数.对于powerTest,Math.pow的参数是double a => 1.00583 double b => 36.0
对于powerResult,它们是double a => 1.0058333333333333 double b => 36.0
我知道这是机器执行浮点数学的方式的问题,我只是不确定如何纠正它.我在计算之前尝试执行以下操作,结果不佳:
monthlyRate = Math.round(monthlyRate * 1000) / 1000;
Run Code Online (Sandbox Code Playgroud) public class ChangePasswordObject {
[Required] [DataType(DataType.EmailAddress)]
string email;
[Required]
string authorization_code;
[Required] [DataType(DataType.Password)]
string password;
}
Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×4
asp.net ×1
css ×1
delphi ×1
delphi-7 ×1
idisposable ×1
ienumerable ×1
java ×1
jquery ×1
path ×1
pow ×1
reflection ×1
sql ×1
validation ×1
varbinarymax ×1