搜尋 replace 結果:
先留個言, 有空來補內容.
VB
Public Module SqlStringExtention
<Extension()>
Function SQLStr(ByVal Original As String) As String
Return Original.Replace("'", "''")
End Function
<Extension()>
Function SQLTrim(ByVal Original As String) As String
Return Original.Trim.Replace("'", "''")
End Function
End Module
C#
//Extension methods must be defined in a static class
public static class StringExtension
{
/// <summary>
/// 把 ' 取代成 ''
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static string sqlStr(this string value)
{
return value.Replace("'", "''");
}
/// <summary>
/// 假設欄位名稱中不會有 [ 或 ] 的符號
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static string sqlField(this string value)
{
return "[" + value.Replace("[", "").Replace("]", "") + "]";
}
}
Bike, 2017/9/30 下午 04:51:18
由於從欄位抓出的值 雖然是由逗點分隔 但整體資料容易被當成一組單一字串
例如
Table
#SomeTable
欄位 :
Id MemberIds
值
1 12,30,58
2 45,68,88
想要篩選 where member_Id in (select MemberIds from SomeTable where Id = 2)
會被當成 Id in ('45,68,88') 文字跟整數無法被篩選
解決方法之一
create table #SomeTable (Id int,MemberIds nvarchar(30))
insert into #SomeTable (Id,MemberIds) values (1,'12,30,58')
insert into #SomeTable (Id,MemberIds) values (2,'45,68,88')
select * from #SomeTable
create table #TargetTable (Id int,member_Id nvarchar(30))
insert into #TargetTable (Id,member_Id ) values (1,12)
insert into #TargetTable (Id,member_Id ) values (2,30)
insert into #TargetTable (Id,member_Id ) values (3,45)
insert into #TargetTable (Id,member_Id ) values (4,58)
insert into #TargetTable (Id,member_Id ) values (5,68)
insert into #TargetTable (Id,member_Id ) values (6,88)
select * from #TargetTable
DECLARE @MemberIds nvarchar(200);DECLARE @SQLString nvarchar(200);
select @MemberIds =MemberIds from #SomeTable(nolocK) where Id = 2
SET @SQLString = N' select * from #TargetTable where member_Id in (' + @MemberIds + ')' ;
EXECUTE sp_executesql @SQLString
將整體都當成字串 就可以執行了
如果用逗點隔開如果用逗點隔開的是字串
如:
Hi,Im,String
可以先把它加上單引號
select '''' + Replace(MemberIds ,',','''' +',' + '''') + '''' from #SomeTable
sean, 2017/6/12 下午 12:09:48
看到黑暗有一個關於中文難字的繁簡轉換處理的文章, 先記錄部份在這裡.
http://blog.darkthread.net/post-2015-03-06-strconv-half-full-width-notes.aspx
var ncrString = toNCR("黑暗執行緒犇ABC123");
Debug.WriteLine(ncrString); //黑暗執行緒犇ABC123
var convString = Microsoft.VisualBasic.Strings.StrConv(
ncrString, Microsoft.VisualBasic.VbStrConv.Narrow, 1028);
Debug.WriteLine(convString); //黑暗执行绪犇ABC123
var resultString = fromNCR(convString);
Debug.WriteLine(resultString); //黑暗执行绪犇ABC123
static string toNCR(string input)
{
StringBuilder sb = new StringBuilder();
Encoding big5 = Encoding.GetEncoding("big5");
foreach (char c in input)
{
//強迫轉碼成Big5,看會不會變成問號
string cInBig5 = big5.GetString(big5.GetBytes(new char[] {c}));
//原來不是問號,轉碼後變問號,判定為難字
if (c!='?' && cInBig5=="?")
sb.AppendFormat("&#{0};", Convert.ToInt32(c));
else
sb.Append(c);
}
return sb.ToString();
}
static string fromNCR(string input)
{
return Regex.Replace(input, "&#(?<ncr>\\d+?);", (m) =>
{
return Convert.ToChar(int.Parse(m.Groups["ncr"].Value)).ToString();
});
}
Bike, 2016/11/21 下午 12:40:54
找了兩三篇文章再加一點修正才組出來的, 記錄一下, 要用 iTextSharp 哦.
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
---
string oldFile = Server.MapPath("/Content/PDF/300000419_20160929162658862.pdf"); //"oldFile.pdf";
string newFile = oldFile.Replace(".pdf", "_New11.pdf");
// open the reader
PdfReader reader = new PdfReader(oldFile);
Rectangle size = reader.GetPageSizeWithRotation(1);
Document document = new Document(size);
int NumberOfPages = reader.NumberOfPages;
// open the writer
FileStream fs = new FileStream(newFile, FileMode.Create, FileAccess.Write);
PdfWriter writer = PdfWriter.GetInstance(document, fs);
document.Open();
// the pdf content
PdfContentByte cb = writer.DirectContent;
string text = "Watermark...";
string windir = Environment.GetEnvironmentVariable("windir");
Chunk textAsChunk = new Chunk(text, new Font(BaseFont.CreateFont(windir + "\\Fonts\\mingliu.ttc,0", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED), 20, Font.NORMAL, new BaseColor(255,0,0)));
// create the new page and add it to the pdf
for (int i = 1; i<= NumberOfPages; i++)
{
if(i > 1)
{
document.NewPage();
}
ColumnText.ShowTextAligned(cb, Element.ALIGN_LEFT, new Phrase(textAsChunk), 0, 0, 0);
PdfImportedPage page = writer.GetImportedPage(reader, i);
cb.AddTemplate(page, 0, 0);
}
// close the streams and voilá the file should be changed :)
document.Close();
fs.Close();
writer.Close();
reader.Close();
Response.Write(newFile + "<br>");
Response.Write(NumberOfPages + "<br>");
Bike, 2016/9/29 下午 06:23:59
慧守CKEditor編輯器版本更新(目前版本IE11無法使用),更新至4.4.7後,大部份IE11皆正常,但有台電腦無法正常運作。
該電腦:
原套用方法:
<textarea style="width:675px; height:60px" name="Description" id="Description">#Description#</textarea>
<script type="text/javascript">
CKEDITOR.replace('Description');
</script>
更改為下面方法即可:
<textarea style="width:675px; height:60px" name="Description" id="Description">#Description#</textarea>
<script type="text/javascript">
$('#Description').ckeditor();
</script>
Reiko, 2015/6/30 下午 05:13:01
當我們在本地的SQL以 Linked Server方式存取遠端的資料庫,有時會出現這樣的訊息
不允許遠端資料表值函數呼叫
通常是使用 stored procedure 或是 自定義的function 會出現這樣的錯誤
這時候可以有個變通方法,就是使用 OPENQUERY 方法
原寫法 (UNTDB 是 Linked Server的 Name)
mySQL = "Select count(*) as Cnt from [UNTDB].[ShopUNT]..[V_Order_Main] ....
新寫法
mySQL = "Select count(*) as Cnt from [ShopUNT]..[V_Order_Main] ....
mySQL = "Select * from Openquery([UNTDB],'" + mySQL.Replace("'", "''") + "')";
1. 不要用 location.href 來重新定位,在 Chromwe 中,History 會增加一筆記錄。若此時再 pushState,History 中會有重覆的記錄。
2. "上一頁"的目標若是同一頁,document.ready 不會被觸發,但若是不同頁面,document.ready 會被觸發。
3. 上一頁時,Select 的內容會被複原,但 textbox 的內容會保留。
Bike, 2015/1/6 下午 02:51:43
在做地址的時候用了一個套件(TWZIPCODE)
可以幫你產生下拉霸的郵遞區號選項
很方便(jQuery)
但是在控制他的資料及回傳
又不知道怎樣比較方便直觀了
首先目前也是文字控制的方式是
UWForUNT.WU.ReplaceStringInControl(Me.Page, "#Post_Code#", Post_Code)
直接用 #Post_Code#
再把她取代
直接讓前端讀到值
回傳時 若是用後端控制 不用再傳ajax 或是 塞到別的後端控制項
回傳的方式
UW.WU.GetValueFromQueryStringOrForm("Post_Code")
但是因為之後不讓 Page Load 再次改成預設值
可以加
If Not Me.IsPostBack Then
UW.WU.GetValueFromQueryStringOrForm("Post_Code")
End If
才不會永遠是預設值
( $('#twzipcode').twzipcode({
zipcodeSel: '#Post_Code#', // 此參數會優先於 countySel, districtSel
countySel: '台北市',
districtSel: '大安區',
zipcodeName: 'Post_Code'
})
)
他如果有包在裡可以直接讀取
另外若是 有一些後端要傳給前端的資料 用response.Write("<script>XXX</script>")
可以直接寫入前端
sean, 2014/11/27 下午 04:20:42
有的時候jquery會用到取代標籤的方式
<div id="testId">我是原本文字</div>
以下兩個都是innerHTML
document.getElementById('testId').innerHTML = "我是之後文字";
$('#testId').html("我是之後文字");
以下兩個都是outerHTML
document.getElementById('testId').outerHTML = "<div id="我是原本Id">我是原本文字</div>";
$('#testId').replaceWith("<div id="我是原本Id">我是原本文字</div>");
但是有時候~我們並不是要取代~而是想單純得到html含標籤的內容~
$('#testId').clone().wrap('<div>').parent().html()
Doug, 2014/8/11 上午 10:50:29
當使用Ajax做回應的時候~
有時候會將HTML本文做取代
例如:$(e).html(回應文)、$(e).replaceWith(回應文)
但是回應文中若是包含Javascript可能會執行,但是並不會顯示在Html裡面
注意:會執行、但不一定會顯示
Doug, 2014/1/10 上午 10:45:00