2016年12月20日 星期二

Web Deploy佈署ASP.NET應用程式到IIS

使用Web Platform來進行安裝Web Deploy,如下圖。




搜尋 Web Deploy,選擇安裝 Web Deploy 3.6、Web Deploy 3.6 without bundled SQL support、Web Deploy 3.6 for Hosting Servers三個套件,安裝好後,會出現下列功能。



接下來,我們要設定使用權限,通常我們不會使用administrator的權限來進行Deploy,所以在進行下圖這個步驟之前,請自行先去新增一個帳號;新增完畢後,就可以透過下圖的位置,來設定權限。


這邊,我們使用skychang這個帳號,到時候在vs裡面,也是用這個帳號進行佈署。



接下來,我們要進入到下圖的位置,打開遠端佈署的功能。




要Enable,必須先停止後,才能勾選Enable,勾選完後,再啟動就可以了。




接下來,我們要設定佈署的相關資訊,簡單的說,就是設定skychang擁有web目錄下的權限。(這樣才能塞網頁上去嘛~ )




這邊我們選則剛剛設定的帳號,然後按下setup,就會開始設定目錄的權限了~




到這邊,其實還沒結束,也別忘記要把port 8172打開。




另外,我們也順便從啟動服務這邊,看看Web Deployment Agent Service、Web Management Service啟動了沒。




都完成之後,就回到Visual Studio裡面,設定發行;通常伺服器,用ip比較方便,他會自己去尋找Web Deploy的位置;網站名稱如果有需要,可以在Default Web Site後面再加上Application Name,例如Default Web Site\MyApp;目的地URL,就是你佈署完之後,你這邊會用瀏覽器打開的URL。




通常這樣應該就都會成功了!!~你的ASP.NET應用程式,就可以順利佈署上去了~

2014年12月4日 星期四

SQL - 時間交集

常在訂房管理、行事曆管理中讀取時間範圍內的資料使用到。

(開始時間 <= 條件結束 && 結束時間 >= 條件開始)

2014年11月20日 星期四

Microsoft Azure - IIS FTP設定Possive傳輸

在VM端點增加兩個TCP Port 5432與5433。


使用排程來備份資料庫至Azure與本機檔案系統

首先在Azure中建立一個vhd,然後記住此vhd的Url。


接著建立一個backup.sql的檔案

USE master
GO
DECLARE @backupTime VARCHAR(20)
DECLARE @sqlCommand NVARCHAR(1000)

SELECT @backupTime=(CONVERT(VARCHAR(8), GETDATE(), 112)
          + REPLACE(CONVERT(VARCHAR(5), GETDATE(), 114), ':', ''))

SET @sqlCommand = 'BACKUP DATABASE [資料庫名稱] TO URL=''[vhd的Url]' + @backupTime+'.bak'' WITH CREDENTIAL = ''mycredential'''
EXECUTE sp_executesql @sqlCommand


SET @sqlCommand = 'BACKUP DATABASE trdysms TO DISK=''[本機路徑]' + @backupTime+'.bak'''
EXECUTE sp_executesql @sqlCommand
GO

最後寫一個.bat檔案給排程來驅動
sqlcmd -S . -i [本機路徑]\backup.sql
如此就可以將資料庫定時的備份至Azure與本機了。

SQL Server - 如何縮小Log記錄檔

2008 & 2012
USE [資料庫名稱]
GO
ALTER DATABASE [資料庫名稱] SET RECOVERY SIMPLE WITH NO_WAIT
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
ALTER DATABASE [資料庫名稱] SET RECOVERY FULL WITH NO_WAIT
GO

2000& 2005 USE [資料庫名稱]
GO
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
BACKUP LOG [資料庫名稱] WITH TRUNCATE_ONLY
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
GO 

2014年11月19日 星期三

asp.net mvc - 使用ENUM(列舉)來製作Radio Button

資料表中建立一個型態為tinyint的Status欄位
然後建立Enum的類別
public enum InvStatusEnum
{
 已開,
 已寄出,
 已入帳,
 作廢
}

在View的Form中就就可以取出設定的Enum
@foreach (int i in Enum.GetValues(typeof(InvStatusEnum)))
{
  @if(i == 0) {
   @Html.RadioButtonFor(model => model.status, i, new { @class = "radiobox", @checked = "checked" })
  } else {
   @Html.RadioButtonFor(model => model.status, i, new { @class = "radiobox" })
  }
  @Enum.GetName(typeof(InvStatusEnum), i)
}

台中國家歌劇院 - 光舞紀活動官網


主要使用了RWD技術,能夠適應各種螢幕大小,不管是用電腦螢幕、平板電腦甚至是手機螢幕,都會自動調整,不會跑版變形喔。

一般電腦版型