我有一个来自外部库的基类,我无法修改 - 这是相关的部分:
public class BaseClass
{
List<string> _values;
public Values { get { return _values; } }
}
Run Code Online (Sandbox Code Playgroud)
我继承BaseClass,我想将_values设置为一个继承自构造函数中的List(T)的类:
public InheritingClass : BaseClass
{
public InheritingClass():base()
{
//set base._values = new InhertingList<string>(); ?
}
}
Run Code Online (Sandbox Code Playgroud)
在那里设置base._values的最佳方法是什么?有没有办法找到值获取的私有变量,并设置以防将来重命名私有变量?
还有其他方法可以完成我需要做的事情,但是如果我可以做到以下几点,那么在没有设置私有属性值的情况下,实现目标的任何方式都会更快.
有一些Linq to SQL的经验我现在正在尝试ADO Entity框架.在Linq to SQL中,我将创建一个Linq to SQL类,将我的表拖过来构建数据上下文.然后我将实例化datacontext类并对datacontext类中的一个属性运行一些lambda.
现在,使用ADO实体框架,我添加了Entity Data Model类,并将表添加到数据模型中.我的实体数据模型类现在有一堆ObjectQuery <>属性,我添加的每个表都有一个属性.
现在我该如何处理这些属性?我怎么称呼他们?有人有代码示例吗?
我在考虑Regex.Match.Group如何变得动态:
Regex.Match (...).Groups["Foo"]
Run Code Online (Sandbox Code Playgroud)
我想成为:
Regex.Match (...).Groups.Foo
Run Code Online (Sandbox Code Playgroud)
我想过编写一个允许的扩展方法:
Regex.Match (...).Groups().Foo
Run Code Online (Sandbox Code Playgroud)
并尝试以这种方式编写,但这是不允许的(';''静态动态'需要')
public static dynamic DynamicGroups Groups(this Match match)
{
return new DynamicGroups(match.Groups);
}
public class DynamicGroups : DynamicObject
{
private readonly GroupCollection _groups;
public DynamicGroups(GroupCollection groups)
{
this._groups = groups;
}
public override bool TryGetMember(GetMemberBinder binder, out object result)
{
Group g = this._groups[binder.Name];
if (g == null)
{
result = null;
return false;
}
else
{
result = g;
return true;
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法实现这个目标?
之前编写的大量其他API dynamic可能更清晰,以这种方式使用.
下面的代码有效,但我想使用yield或更改算法来优化代码.
public IEnumerable<Book> GetAuthorWithBookName(string keyword)
{
var bookAndAuthorList = new List<Book>();
List<Author> AuthorNameList = getAuthorName(keyword);
foreach (var author in AuthorNameList)
{
XmlNode booksNames = getBook(author);
XDocument XDOCbooksNames = XDocument.Parse(booksNames.OuterXml);
var bookNameList = (
from x1 in XDOCbooksNames.Descendants("Books")
select x1.Elements("book").Select(g => g.Attribute("name").Value))
.ToList();
foreach (var bookName in bookNameList)
{
bookAndAuthorList.Add(new Book()
{
authorName = author.authorName,
bookName = bookName
});
}
}
return bookAndAuthorList;
}
public class Book
{
public string authorName { get; set; }
public string bookName { get; set; …Run Code Online (Sandbox Code Playgroud) 我有一个名为user_class的数据结构(这是一个类),我想从数据库加载所有用户数据.
目前我有
While SQLreader.Read()
Hold_user.username = SQLreader(0)
Hold_user.BlahBlahBlah = SQLreader(1)
Hold_user.Secret_Password = SQLreader(2)
return_value.Add(Hold_user)
End While
Run Code Online (Sandbox Code Playgroud)
其中return_value是user_class的List,hold_user是同一个类的实例.
Dim return_value As New List(Of user_class)
Dim Hold_user As New user_class
Run Code Online (Sandbox Code Playgroud)
当while语句循环读取数据时,SQLreader(0),(1)和(2)用新数据更新,但是它们似乎也在更新return_value中保存的存储值....
纠缠是Visual Studio中的一个错误,还是我需要像ByVal这样的东西,在Add方法中(我知道它不是我需要的ByVal,因为我已经尝试过了:)但我希望你明白我的意思.)
我总是很好奇.
为什么这样做:
double Number = Convert.ToDouble(TextBox1.Text);
Run Code Online (Sandbox Code Playgroud)
但这不是:
double Number = (double)TextBox1.Text;
Run Code Online (Sandbox Code Playgroud) 我尝试转换string为ListViewItem:
ListViewItem str = (ListViewItem)Convert.ChangeType(az, typeof(ListViewItem));
Run Code Online (Sandbox Code Playgroud)
但它不起作用.这段代码有什么问题?
我正在尝试使用sharpsvn实现diff方法.我的代码片段如下
private void Diff(string pSourcePath)
{
Uri UriSCPath = new Uri(pstrSourcePath);
SvnClient DPISVN_Clnt = new SvnClient();
DPISVN_Clnt.Authentication.DefaultCredentials = new NetworkCredential("Biju","Biju");
try
{
SvnRevisionRange objSvnRevisionRange=new SvnRevisionRange (17157,17161);
Stream stream=null;
MemoryStream objMemoryStream = new MemoryStream();
bool b = DPISVN_Clnt.Diff(pstrSourcePath, objSvnRevisionRange, objMemoryStream);
StreamReader strReader = new StreamReader(objMemoryStream);
string str = strReader.ReadToEnd();
}
Run Code Online (Sandbox Code Playgroud)
我的第一个问题是Diff方法总是在我的程序中返回true.我改变了我的revison范围而不是它返回true.
我的第二个问题是在diff方法中有一个输入参数名称Stream result.I认为它包含结果流信息.当我尝试使用streamreader读取结果流的内容时,它返回空字符串.但是我的修改范围不同,我的源文件中存在一些差异.
使用流是一样的方法吗?
当我尝试运行包含EntityDataSource和Listview的页面时,我收到了用户'NT AUTHORITY/NETWORK SERVICE'的臭名昭着的登录失败.这是堆栈跟踪:
[SqlException(0x80131904):用户'NT AUTHORITY\NETWORK SERVICE'登录失败.] System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception,Boolean breakConnection)+4846887 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) 194 System.Data.SqlClient.TdsParser.Run(runBehavior runBehavior,SqlCommand的cmdHandler,SqlDataReader的数据流,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)2392 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(布尔enlistOK)35 System.Data.SqlClient的. SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo,String newPassword,Boolean ignoreSniOpenTimeout,Int64 timerExpire,SqlConnection owningObject)+144 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host,String newPassword,Boolean redirectedUserInstance,SqlConnection owningObject,SqlConnectionString connectionOptions,Int64 timerStart)+ 342 System.Data.SqlClient.SqlInternalConn ectionTds.OpenLoginEnlist(SqlConnection的owningObject,SqlConnectionString connectionOptions,字符串NEWPASSWORD,布尔redirectedUserInstance)221 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity身份,SqlConnectionString connectionOptions,对象providerInfo,字符串NEWPASSWORD,SqlConnection的owningObject,布尔redirectedUserInstance)189系统.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions选项,Object poolGroupProviderInfo,DbConnectionPool池,DbConnection owningConnection)+185 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection,DbConnectionPool池,DbConnectionOptions选项)+31 System.Data.ProviderBase. DbConnectionPool.CreateObject(DbConnection owningObject)+433 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)+66 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)+499 System.Data.Provid erBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)+65 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection,DbConnectionFactory connectionFactory)+117 System.Data.SqlClient.SqlConnection.Open()+122 System.Data.EntityClient.EntityConnection. OpenStoreConnectionIf(Boolean openCondition,DbConnection storeConnectionToOpen,DbConnection originalConnection,String exceptionCode,String attemptsOperation,Boolean&closeStoreConnectionOnFailure)+47
[EntityException:底层提供程序在Open上失败.] System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition,DbConnection storeConnectionToOpen,DbConnection originalConnection,String exceptionCode,String attemptsOperation,Boolean&closeStoreConnectionOnFailure)+168 System.Data.EntityClient.EntityConnection.Open ()+96 System.Data.Objects.ObjectContext.EnsureConnection()+81 System.Data.Objects.ObjectQuery 1.GetResults(Nullable1 forMergeOption)+46 System.Data.Objects.ObjectQuery 1.System.Collections.Generic.IEnumerable<T>.GetEnumerator() +39
System.Linq.Enumerable.Single(IEnumerable …
sql-server entity entity-framework ado.net-entity-data-model
我有一个已经实现了所有内容的类,但它的初始化过程对于每个子类都是不同的.
有没有更好的成语来取代ctor?我应该使用更通用/更动态的东西吗?
我是一名开发人员PHP/MySQL开发人员.我们数据库的内容是一个由非程序员组成的excel文件.他们是聪明人,但往往看不到excel文件中的小变化可以完全使我的PHP代码中的逻辑变得毫无意义.有没有人在这些类型的场景中有与非程序员沟通的技巧?
我正在尝试构建一个 Chrome 浏览器扩展程序,它应该可以增强 Twitter 网站在 Google Chrome 中的行为方式。我想标记加载新推文时向下移动的顶部推文,然后滚动到它。
我可以通过mousedown使用.live(). 之后,我必须等到推文加载完毕,然后才能向下滚动到上一条推文。我有一个setTimeout()现在的黑客,这对我有用,但我想要一个更好的解决方案。
可能的解决方案:
我正在做一个
System.Text.Encoding.UTF8.GetBytes(s)
Run Code Online (Sandbox Code Playgroud)
在使用.NET 2.0框架的两个不同程序(一个控制台,一个Web)中的字符串上,编码与两者不同.对于字符串"everything",我得到相同的结果,但对于字符串"OnI3UwUc",我得到两个不同的结果.
对于"OnI3UwUc",6f6e693375777563对于另一个程序中的"OnI3UwUc",我得到4f63493355775563.
在里面
我试着把它写成与我的一些经典ASP代码一样操作:
Dim crypt : Set crypt = CreateObject("Chilkat.Crypt2")
crypt.UnlockComponent("TXTECHCrypt_6X6EnMdFNRCe")
crypt.HashAlgorithm = "sha1"
crypt.CryptAlgorithm = "aes"
crypt.CipherMode = "ecb"
crypt.EncodingMode = "hex"
crypt.SetEncodedKey "100202330405560608790A8B0C9D0EAF","hex"
Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×2
.net-4.0 ×1
c#-4.0 ×1
c++ ×1
casting ×1
constructor ×1
dynamic ×1
encoding ×1
entity ×1
generics ×1
inheritance ×1
javascript ×1
jquery ×1
linq ×1
linq-to-xml ×1
optimization ×1
sharpsvn ×1
sql-server ×1
string ×1
twitter ×1
vb.net ×1
yield ×1