Tag: .net 2.0

InvalidOperationException:无法为“Role”创建DbSet,因为此类型未包含在上下文的模型中

以下解决方案适用于.net核心1.1,但在从1.1升级到2.0后,我收到以下错误: InvalidOperationException:无法为“Role”创建DbSet,因为此类型未包含在上下文的模型中。 当用户尝试登录并执行以下语句时: var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false); 怎么了? User.cs public partial class User : IdentityUser { public string Name { get; set; } } IdentityEntities.cs public partial class UserLogin : IdentityUserLogin { } public partial class UserRole : IdentityUserRole { } public partial class UserClaim : IdentityUserClaim { } public […]

使用System.Data.SQLite.SQLIteDataReader.GetBlob检索BLOB字段时出错

由于我无法控制的原因,我正在创建一个.NET 2.0程序集,在其中我加载一个SQLite数据库并从中检索一些二进制数据。 具体来说,是PDF文档。 System.Data.SQLite.SQLiteDataReader.GetBlob(int i,bool ReadOnly)的文档说:(强调我的) 将列检索为System.Data.SQLite.SQLiteBlob对象。 如果查询不包含“rowid”列或其中一个别名-OR-,如果未使用System.Data.CommandBehavior创建System.Data.SQLiteDataReader,则这对于使用ROWID -OR-创建的表不起作用.KeyInfo标志。 这是我的SQLiteCommand: using (SQLiteCommand getBooklet = new SQLiteCommand($”SELECT \”rowid\”, File_Name FROM Booklets WHERE Id = {int.Parse(key)}”, dbConnection)) 我像这样实例化了我的SQLiteDataReader: using (SQLiteDataReader currentCustomerReader = getBooklet.ExecuteReader(System.Data.CommandBehavior.KeyInfo & System.Data.CommandBehavior.SequentialAccess)) 我调用GetBlob(int i,bool ReadOnly)函数如下: currentCustomerPdf = currentCustomerReader.GetBlob(1, true); 我对此表示欢迎: System.InvalidOperationException: No RowId is available at System.Data.SQLite.SQLiteBlob.Create(SQLiteDataReader dataReader, Int32 i, Boolean readOnly) at System.Data.SQLite.SQLiteDataReader.GetBlob(Int32 […]

链接通用列表扩展的方法

我有一个“复杂”类型的列表 – 一个具有一些字符串属性的对象。 List本身是另一个对象的属性,包含各种类型的对象,如此缩写类结构所示: Customer { public List Characteristics; . . . } Characteristic { public string CharacteristicType; public string CharacteristicValue; } 我希望能够为当前客户收集特定类型特征值的列表,我可以按如下步骤分两步完成: List interestCharacteristics = customer.Characteristics.FindAll( delegate (Characteristic interest) { return interest.CharacteristicType == “Interest”; } ); List interests = interestCharacteristics.ConvertAll( delegate (Characteristic interest) { return interest.CharacteristicValue; } ); 这很好,但似乎还有很长的路要走。 我确定我必须错过一个更简单的方法来获取这个列表,或者通过链接FindAll()和Convert()方法,或者我完全忽略的其他东西。 对于背景,我在.Net 2.0工作,所以我只限于.Net 2generics,而且特性类是外部依赖 – […]

SQL BULK INSERT的替代品

我需要将数据表单.csv文件导入数据库表(MS SQL Server 2005)。 SQL BULK INSERT似乎是一个不错的选择,但问题是我的数据库服务器与我的WEB服务器不在同一个盒子上。 这个问题描述了同样的问题,但我无法控制我的数据库服务器,也无法共享任何文件夹。 我需要一种方法来以编程方式导入我的.csv(C#),任何想法? 编辑:这是一个网站的一部分,用户可以使用.csv内容填充表格,这将每周发生,如果不是更频繁

当所有成员都被明确处理时,类是否需要实现IDisposable?

试图了解何时需要实现IDisposable: 我写了一个小例子。 public class FileManager { private FileStream fileStream; public void OpenFile(string path) { this.fileStream = File.Open(path, FileMode.Open, FileAccess.Read); } public void CloseFile(string path) { if ( this.fileStream != null && this.fileStream.CanRead) { this.fileStream.Close(); } this.fileStream.Dispose(); } } // client var manager = new FileManager(); manager.Open(“path”); manager.Close(“path”); 此类是否需要实现IDisposable,因为它具有托管资源(FileStream),该资源保存在非托管资源(文件)上? 或者我不必实现IDisposable,因为我在课堂上清理? 困惑。

如何确保List .Contains(T)与我的自定义类一起使用?

我使用.net 2.0(C#) 我有一个Person类,我从数据库中傀儡List p。 我知道我的列表有重复的事实,但当我尝试删除重复项时,它们不会被删除。 我的Person类是否需要实现List .Contains(T)的任何接口才能正常工作? 还有其他想法吗? 谢谢。

使用System.WIndows.Forms.WebBrowser控件进行打印

我在.net 2.0框架中使用了WebBrowser控件。 是否可以更改打印行为,以便始终打印到默认打印机,而不向用户显示任何对话框? 这是一个自助服务终端,所以总会有一台打印机直接连接到自助服务终端,打印对用户来说应该是无缝的。

如何在.Net Framework中为自动属性注入方法

我有一些具有许多属性的类Foo: public class Foo { public int Property1 { get; set; } public int Property2 { get; set; } public int Property3 { get; set; } } 在其他课程中,我有一些方法,例如 public void SomeMethod() { //… } 如何将此方法注入类Foo中的每个属性集? 我使用.Net Framework 2.0

DataGridView绑定

我有一个gridview,我通过通用列表绑定。 我自己设置了所有列。 我只是想: 编辑行时捕获事件PRE格式错误 – 通过隐藏字段获取行信息 – 并保持不变 我确信这一定非常简单,但我对表单工作做的并不多,而且我对DataGridViews事件不熟悉。

使用.net 4.0测试程序集测试.net 3.5程序集时的风险有多大

我意识到Visual Studio 2010 sp1允许测试项目现在以3.5为目标。 但是,出于各种原因,我并不完全了解,我们的测试项目仍然以dot net 4.0为目标。 一般问题在标题中。 风险有多大? 具体来说,这可能意味着测试将在CLR v4中运行,而我们的许多客户将使用CLR v2。 此外,测试似乎使用v4库组件(例如System.Data),即使应用程序是针对v2构建的。 一个方法(System.Data.SqlClient.SqlBulkCopy)包含v2中的错误,该错误已在v4中修复。 我们的测试错过了。 暂且不说CLR,我怎样才能强制我的应用程序使用某些库的v2,即使它被v4测试程序集引用(加载到应用程序域中)? 我一直在尝试一个例子,似乎无法实现它。 我的3.5应用程序引用System.Data v2,并将程序集版本号回显到控制台。 从3.5测试程序集调用时,版本为2.0。 从4.0测试程序集中,版本为4.0。 (在我的应用程序的参考中,“特定版本”设置为true)