2014年10月16日 星期四

EF 呼叫 sql server 自訂函數

目前的EF 無法匯入 UDF,只能透過 db.Database.SqlQuery 的方式取得資料
範例:
string sqlQuery = "SELECT [dbo].[平均成本] ({0},{1},{2},{2},0,0)";
Object[] parameters = { a.產品編號, DateTime.Now, a.目前庫存 };
var 平均單價 = db.Database.SqlQuery(sqlQuery, parameters).FirstOrDefault();

Core 用法:
int p1=123;
var res =(await DbContext1.Database.SqlQuery<string>($"select dbo.xxx({p1})").ToListAsync()).FirstOrDefault();

User Profile Service 服務無法登入 無法載入使用者設定檔

1. 使用安全模式(含命令提示字元) 進入windows
2. regedit
3. 展開HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
4. 找到兩個比較長的,重新命名以便對調 .bak
5. 針對沒有.bak 的項目,將右邊視窗中的 refcount 和 state 都修改為0
6. 重新開機便可以順利登入

參考來源

2014年10月6日 星期一

檢視無法匯入entity framework edmx

錯誤訊息: 資料表/檢視 xxx 未定義主索引鍵,也無法推斷有效的主索引鍵。此資料表/檢視已被排除。...
解法:
在 EDMX 匯入 SQL Server 檢視表的時候,有兩種明確提示的方法:
  1. 在 SELECT 子句中,如果有欄位使用 ISNULL 函式,那麼該欄位會自動成為 EF 的主索引鍵
  2. 在 SELECT 子句中,如果有欄位使用 NULLIF 函式,那麼該欄位一定不會成為 EF 的主索引鍵

input 連結 datalist 用程式控制彈出選項

範例: nextTick(() => document.querySelector('input').showPicker());  ※僅支援現代瀏覽器