當前位置:首頁 » 編程語言 » mvclinqtosql

mvclinqtosql

發布時間: 2022-07-15 14:52:13

㈠ MVC中返回視圖模型類型出錯

注意,你linq select出來的是一個匿名對象,而在視圖中的model類型指明了是List ,所以出錯。

㈡ 求解Asp.net mvc 中對資料庫連接的困惑。在線等

Entity Framework、LinqTosql、NHibernate只是ORM而已。
並不是說不能用ADO.NET,因為ASP.NET MVC一般需要將Model(或者叫ViewModel)顯示在View中,很多人直接就用EntityFramework的實體Model了。特別是有些代碼生成工具能很方便的生成Model。

㈢ 關於LINQforNwind的示例

給你一個LinqToEF 的例子吧 希望能幫到你

配置文件(連接字元串):
<connectionStrings>
<add name="TempConStr" connectionString="Data Source = Address;DataBase = Temp;User Id = ??;Password =?? " /> --這個是LinqToSql 的鏈接字元串
<add name="TempEntities" connectionString="metadata=res://*/Models.Temp.csdl|res://*/Models.Temp.ssdl|res://*/Models.Temp.msl;provider=System.Data.SqlClient;provider connection string="data source=Address;initial catalog=Temp;user id=??;Password = woshiwei1;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" /> --這個是LinqToEF 的鏈接字元串

--數據模型 --可以用VS 自動生成
using System;
using System.Data.Linq.Mapping;
using System.Data.Objects;
using System.Data.Objects.DataClasses;
using System.Data.EntityClient;
using System.ComponentModel;
using System.Xml.Serialization;
using System.Runtime.Serialization;

[assembly: EdmSchemaAttribute()]
#region EDM 關系源元數據

[assembly: EdmRelationshipAttribute("TempModel", "FK_Purchase_Customers", "Customer", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(SimpleMvc.Models.Customer), "Purchase", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(SimpleMvc.Models.Purchase), true)]

#endregion

namespace SimpleMvc.Models
{
#region 上下文

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
public partial class TempEntities1 : ObjectContext
{
#region 構造函數

/// <summary>
/// 請使用應用程序配置文件的「TempEntities1」部分中的連接字元串初始化新 TempEntities1 對象。
/// </summary>
public TempEntities1() : base("name=TempEntities1", "TempEntities1")
{
this.ContextOptions.LazyLoadingEnabled = true;
OnContextCreated();
}

/// <summary>
/// 初始化新的 TempEntities1 對象。
/// </summary>
public TempEntities1(string connectionString) : base(connectionString, "TempEntities1")
{
this.ContextOptions.LazyLoadingEnabled = true;
OnContextCreated();
}

/// <summary>
/// 初始化新的 TempEntities1 對象。
/// </summary>
public TempEntities1(EntityConnection connection) : base(connection, "TempEntities1")
{
this.ContextOptions.LazyLoadingEnabled = true;
OnContextCreated();
}

#endregion

#region 分部方法

partial void OnContextCreated();

#endregion

#region ObjectSet 屬性

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
public ObjectSet<Customer> Customer
{
get
{
if ((_Customer == null))
{
_Customer = base.CreateObjectSet<Customer>("Customer");
}
return _Customer;
}
}
private ObjectSet<Customer> _Customer;

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
public ObjectSet<Purchase> Purchase
{
get
{
if ((_Purchase == null))
{
_Purchase = base.CreateObjectSet<Purchase>("Purchase");
}
return _Purchase;
}
}
private ObjectSet<Purchase> _Purchase;

#endregion
#region AddTo 方法

/// <summary>
/// 用於向 Customer EntitySet 添加新對象的方法,已棄用。請考慮改用關聯的 ObjectSet<T> 屬性的 .Add 方法。
/// </summary>
public void AddToCustomer(Customer customer)
{
base.AddObject("Customer", customer);
}

/// <summary>
/// 用於向 Purchase EntitySet 添加新對象的方法,已棄用。請考慮改用關聯的 ObjectSet<T> 屬性的 .Add 方法。
/// </summary>
public void AddToPurchase(Purchase purchase)
{
base.AddObject("Purchase", purchase);
}

#endregion
}

#endregion

#region 實體

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmEntityTypeAttribute(NamespaceName="TempModel", Name="Customer")]
[Serializable()]
[DataContractAttribute(IsReference=true)]
[Table]
public partial class Customer : EntityObject
{
#region 工廠方法

/// <summary>
/// 創建新的 Customer 對象。
/// </summary>
/// <param name="id">Id 屬性的初始值。</param>
/// <param name="name">Name 屬性的初始值。</param>
public static Customer CreateCustomer(global::System.Int32 id, global::System.String name)
{
Customer customer = new Customer();
customer.Id = id;
customer.Name = name;
return customer;
}

#endregion
#region 基元屬性

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[DataMemberAttribute()]
[Column]
public global::System.Int32 Id
{
get
{
return _Id;
}
set
{
if (_Id != value)
{
OnIdChanging(value);
ReportPropertyChanging("Id");
_Id = StructuralObject.SetValidValue(value);
ReportPropertyChanged("Id");
OnIdChanged();
}
}
}
private global::System.Int32 _Id;
partial void OnIdChanging(global::System.Int32 value);
partial void OnIdChanged();

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
[Column]
public global::System.String Name
{
get
{
return _Name;
}
set
{
OnNameChanging(value);
ReportPropertyChanging("Name");
_Name = StructuralObject.SetValidValue(value, false);
ReportPropertyChanged("Name");
OnNameChanged();
}
}
private global::System.String _Name;
partial void OnNameChanging(global::System.String value);
partial void OnNameChanged();

#endregion

#region 導航屬性

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[("TempModel", "FK_Purchase_Customers", "Purchase")]
public EntityCollection<Purchase> Purchase
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<Purchase>("TempModel.FK_Purchase_Customers", "Purchase");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<Purchase>("TempModel.FK_Purchase_Customers", "Purchase", value);
}
}
}

#endregion
}

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmEntityTypeAttribute(NamespaceName="TempModel", Name="Purchase")]
[Serializable()]
[DataContractAttribute(IsReference=true)]
public partial class Purchase : EntityObject
{
#region 工廠方法

/// <summary>
/// 創建新的 Purchase 對象。
/// </summary>
/// <param name="id">Id 屬性的初始值。</param>
/// <param name="customerId">CustomerId 屬性的初始值。</param>
/// <param name="description">Description 屬性的初始值。</param>
/// <param name="price">Price 屬性的初始值。</param>
public static Purchase CreatePurchase(global::System.Int32 id, global::System.Int32 customerId, global::System.String description, global::System.Decimal price)
{
Purchase purchase = new Purchase();
purchase.Id = id;
purchase.CustomerId = customerId;
purchase.Description = description;
purchase.Price = price;
return purchase;
}

#endregion
#region 基元屬性

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Int32 Id
{
get
{
return _Id;
}
set
{
if (_Id != value)
{
OnIdChanging(value);
ReportPropertyChanging("Id");
_Id = StructuralObject.SetValidValue(value);
ReportPropertyChanged("Id");
OnIdChanged();
}
}
}
private global::System.Int32 _Id;
partial void OnIdChanging(global::System.Int32 value);
partial void OnIdChanged();

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Int32 CustomerId
{
get
{
return _CustomerId;
}
set
{
OnCustomerIdChanging(value);
ReportPropertyChanging("CustomerId");
_CustomerId = StructuralObject.SetValidValue(value);
ReportPropertyChanged("CustomerId");
OnCustomerIdChanged();
}
}
private global::System.Int32 _CustomerId;
partial void OnCustomerIdChanging(global::System.Int32 value);
partial void OnCustomerIdChanged();

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.String Description
{
get
{
return _Description;
}
set
{
OnDescriptionChanging(value);
ReportPropertyChanging("Description");
_Description = StructuralObject.SetValidValue(value, false);
ReportPropertyChanged("Description");
OnDescriptionChanged();
}
}
private global::System.String _Description;
partial void OnDescriptionChanging(global::System.String value);
partial void OnDescriptionChanged();

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Decimal Price
{
get
{
return _Price;
}
set
{
OnPriceChanging(value);
ReportPropertyChanging("Price");
_Price = StructuralObject.SetValidValue(value);
ReportPropertyChanged("Price");
OnPriceChanged();
}
}
private global::System.Decimal _Price;
partial void OnPriceChanging(global::System.Decimal value);
partial void OnPriceChanged();

#endregion

#region 導航屬性

/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[("TempModel", "FK_Purchase_Customers", "Customer")]
public Customer Customer
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Customer>("TempModel.FK_Purchase_Customers", "Customer").Value;
}
set
{
((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Customer>("TempModel.FK_Purchase_Customers", "Customer").Value = value;
}
}
/// <summary>
/// 沒有元數據文檔可用。
/// </summary>
[BrowsableAttribute(false)]
[DataMemberAttribute()]
public EntityReference<Customer> CustomerReference
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Customer>("TempModel.FK_Purchase_Customers", "Customer");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Customer>("TempModel.FK_Purchase_Customers", "Customer", value);
}
}
}

#endregion
}

--封裝強類型的 ObjectContext 用於操作對應的模型.
public class BaseDataContext : DataContext
{
public BaseDataContext(string fileOrServerOrConnection) : base(fileOrServerOrConnection)
{
}

public BaseDataContext(string fileOrServerOrConnection, MappingSource mapping)
: base(fileOrServerOrConnection, mapping)
{
}

public Table<Customer> Customers
{
get { return GetTable<Customer>(); }
}

public Table<Purchase> Purchases
{
get { return GetTable<Purchase>(); }
}

}

--這里是調用

var dataContext =
new BaseObjectContext(ConfigurationManager.ConnectionStrings["TempEntities"].ConnectionString);

var query = from c in dataContext.Customers
select new
{
c.Name,
Purchases = from p in dataContext.Purchases
where p.CustomerId == c.Id && p.Price > 1000
select new {p.Description, p.Price}
};

㈣ 未將對象引用設置到對象的實例。

未將對象引用設置到對象的實例=BUG。如果別人給你一個你未預料到的null值,拋出一個ArgumentNullException以幫助別人定位BUG。如果你預料到會有null值,那麼修改你的程序來容許null值以避免昂貴的異常拋出過程。
調用CreateInstance之前檢查Assembly.Load(path)的返回值
轉換之前檢查Assembly.CreateInstance的返回值
調用GetCategories之前檢查CreateCategory的返回值

㈤ MVC的Model一般都是用LinqSql做的嗎

先定義匿名類型,然後使用查詢操作符迭代結果,最後使用count擴展方法統計就是了。
這個也不屬於mvc,也不屬於linq
to
sql,而是屬於linq。
你的基本概念沒弄清楚,就把自己套入一堆名詞中去了。。。

㈥ 如何通過MVC向資料庫中添加數據

循環遍歷實體,逐個添加實體到資料庫就行了啊。

㈦ 未將對象引用設置到對象的實例。

未將對象引用設置到對象的實例=BUG。如果別人給你一個你未預料到的null值,拋出一個ArgumentNullException以幫助別人定位BUG。如果你預料到會有null值,那麼修改你的程序來容許null值以避免昂貴的異常拋出過程。

調用CreateInstance之前檢查Assembly.Load(path)的返回值
轉換之前檢查Assembly.CreateInstance的返回值
調用GetCategories之前檢查CreateCategory的返回值

熱點內容
php獲取當前年 發布:2025-02-02 01:50:41 瀏覽:155
sqlbrowser服務 發布:2025-02-02 01:32:14 瀏覽:730
jeecg源碼下載 發布:2025-02-02 01:08:47 瀏覽:365
多台電腦能共用一個伺服器嗎 發布:2025-02-02 01:08:44 瀏覽:26
oppo雲存儲空間怎麼清理 發布:2025-02-02 00:59:31 瀏覽:263
項目編譯啥意思 發布:2025-02-02 00:25:13 瀏覽:223
逐鹿中原怎樣做掛機腳本 發布:2025-02-02 00:23:39 瀏覽:28
安卓系統跟蹤在哪裡 發布:2025-02-02 00:23:38 瀏覽:899
安卓uc瀏覽器怎麼安裝油猴 發布:2025-02-02 00:23:38 瀏覽:299
中商情報網資料庫 發布:2025-02-02 00:09:26 瀏覽:533