huge boobs pictures hd. 3gp desi glamcore perfect goddesses in oral.

https://eporner.monster destiny blonde has a sweet teen pussy.

Tạo Module DNN

04-09-2008 11:31:48Một vài khái niệm để thông suốt phát triển module dotnetnuke có nghĩa là làm cái gì như thế nào, kết quả ra sao ? Túm lại đơn giản là thế này :

– Dotnetnuke là 1 cổng thông tin portal.
– Các yếu tố cơ bản của portal (cổng thông tin)
+ website & website con
+ các trang (pages) trên wwebsite
+ Các vùng (trên 1 trang) gọi là Pane
+ Các porlet (chứa nội dung thông tin)

04-09-2008 11:44:06porlet : nôm na nó là một hình vuông trên website chứa nội dung thông tin, nhiều hình vuông (porlet) ghép lại chúng ta có 1 trang web (web page), không biết định nghĩa webpage là cái gì nữa chỉ hy vọng là anh em đều hiểu khái niệm cơ bản webpage.Các website thông dụng tại việt nam có 3 khối thông tin, menu bên trái, nội dung chính ở giữa và bên phải là quảng cáo, đối tác … 3 khối thông tin trên được khái quát thành 3 Pane (vùng). Như vậy chúng ta có khái niệm vùng (Pane = hoặc region thì cũng thế), trên 1 vùng có thể chứa n Porlet.Các vùng có nội dùng ghép lại thì chúng ta có webpage : tương đương với khái niệm page trong dotnetnuke.Nhiều page ghép lại với nhau thì thành 1 website. Tuy nhiên cũng phải nói thêm, khái niệm page trên DNN rộng hơn nhiều.

Ví dụ

http://thienan.vn/tintuc/tabid/55/id/6/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/8/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/16/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/19/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/20/Default.aspx

là 1 page có PageID=55.
Trong Page này, porlet chính giữa hiển thị nội dung = cách đọc trong CSDL tin tức có mã 6, 8, 16, 19, 20 …

Vì các porlet có cái load động theo URL, có cái load tĩnh nên nhu cầu cần có settings cho mỗi porlet. Settings là gì ? là phần cho phép người dùng chỉ định cách thức hiển thị thông tin cho mỗi porlet.

Quay lại với Page, chúng ta có thể thấy khái niệm Page trong DNN đơn giản là cái khung các Pane bố trí ra sao, trên mỗi Pane đó các porlet đặt và hiển thị nội dung thế nào -> Page là khung cho các vùng (Pane, Region)

Coding for food

04-09-2008 11:50:49YAHOOMSNNhìn 2 hình bên trên của Yahoo và MSN, chúng ta có thể thấy các miếng vuông rất giống nhau, mỗi miếng vuông đó là 1 porlet, bao bên ngoài mỗi porlet là 1 container.

Như vậy có thể thấy container là cái chỉ dùng để làm đẹp, nó giúp các porlet của website được trình bày một cách thống nhất. Cái Container này không phải lập trình, DNN đã làm hộ. Chúng ta chỉ làm việc viết cách hiển thị cái nội dung bên trong các container, việc viết code hiển thị nội dung bên trong là việc viết module cho DNN.

Coding for food

05-09-2008 12:02:28Để viết code cho 1 module chúng ta nên biết cấu trúc module của DNN- 1 Module có n Definitions
– 1 Definition có n ControlsTrong 1 module có 2 Control đặc biệt, là các control có key = “” và key = “Settings”. Control key=(blank) thì chúng ta có thể thêm nó vào 1 Page. Control có key=Settings là phần thiết lập cho module.

1 Module như vậy có thể có nhiều Control cùng có key = blank, tuy nhiên khuyến cáo là chúng ta chỉ nên dùng 1.

Coding for food

05-09-2008 12:17:40Để gọi 1 usecontrol (tương đương với 1 file ascx) chúng ta viết chúng ta dùngDotNetNuke.Common.Globals.NavigateURL(PortalSettings.ActiveTab.TabID, “edit”, “mid/” + this.ModuleId.ToString());Chúng ta nên để ý rằng DNN có 2 chế độ chính, là chế độ frontend (trình diễn presentation) và backend (phần quản lý administration)

Câu lệnh trên cho phép chúng ta chui vào phần backend (quản lý), cho phép chúng ta gọi 1 control duy nhất là control có nhiệm vụ edit 1 tin tức.

Url cho phép chúng ta truy cập vào tầng frontend (tầng trình diễn)

http://thienan.vn/tintuc/tabid/55/id/19/Default.aspx

URL cho phép chúng ta vào backend (tầng quản lý)

http://localhost/Home/tabid/36/ctl/admin/mid/378/Default.aspx

chúng ta xem xét kỹ URL này

ctl/admin/mid/378/Default.aspx
=> ctl = “admin” (key) , mid = “378” (ModuleID)
=> truy cập vào module có mã 378 đọc ra usercontrol (file ascx) có key = “admin”

Như vậy có thể thấy backend và frontend khác nhau ở chỗ backend có phần …/ctl/xxx/mid/yyy…
tức là có giá trị của ctlmid

các key thông dụng cho quản lý tin tức

key = “news_edit” sửa 1 tin tức
key = “news_add” thêm mới 1 tin
key = “news_publish” cho phép 1 tin được đăng hay không
key = “news_delete” xoá 1 tin tức mới
key = “news_view” xem nội dung 1 tin

Thông thường “news_view” -> “” vì key = (blank) có nghĩa là chúng ta có thể thêm control này (porlet) vào frontend (thêm porlet vào trang – webpage trình diễn nội dung)

Coding for food

05-09-2008 12:24:48Các module được viết và đặt trong thư mục \Website\DesktopModulesĐể viết 1 control chúng ta khai báoC#
public partial class news_admin : DotNetNuke.Entities.Modules.PortalModuleBase

VB
Public Partial Class EditHtml
Inherits DotNetNuke.Entities.Modules.PortalModuleBase

Để phần này không lỗi module của bạn phải Reference đến file dotnetnuke.dll (còn reference là làm thế nào thì các bác tự tìm hiểu)

Hình này mà các bác nhìn còn không hiểu thì anh em bó tay rồi.

Coding for food

05-09-2008 12:30:53Trong phần setting chúng ta làm như sau :C#
public partial class news_list_settings : DotNetNuke.Entities.Modules.ModuleSettingsBaseVB
Partial Public Class Settings
Inherits DotNetNuke.Entities.Modules.ModuleSettingsBase

Trong ascx settings này chúng ta phải viết 2 hàm (bắt buộc)

VB
Public Overrides Sub LoadSettings()
C#
public override void LoadSettings()

C#
public override void UpdateSettings()
VB
Public Overrides Sub UpdateSettings()

Trong này để ghi vào CSDL chúng ta dùng

VB
Dim objModules As New DotNetNuke.Entities.Modules.ModuleController
Dim objModule As DotNetNuke.Entities.Modules.ModuleInfo = objModules.GetModule(ModuleId, TabId, False)

‘Update Tab Module Settings
objModules.UpdateModuleSetting(ModuleId, “TEXTHTML_ReplaceTokens”, rblstReplaceTokens.SelectedValue)

C#
DotNetNuke.Entities.Modules.ModuleController objModules = new DotNetNuke.Entities.Modules.ModuleController();
objModules.UpdateModuleSetting(ModuleId, “newsid”, newsid.ToString());
objModules.UpdateModuleSetting(ModuleId, “limits”, txtLimits.Text);

Đọc ra thì thế nào

C#
txtLimits.Text = ModuleSettings[“limits”].ToString();
VB
rblstReplaceTokens.SelectedValue = CType(ModuleSettings(“TEXTHTML_ReplaceTokens”), Byte)

Coding for food

05-09-2008 12:38:56Trong frontend (giao diện trình diễn) để lấy nội dung của setting chúng ta cũng dùngstring limits= Settings[“limits”].ToString();
Rồi hiển thị mọi thứ bình thường như code ASP.NET.Thông thường anh em chúng ta dùng repeater và các thứ Label, Datagridview … để hiển thị nội dung cần làm.

Để module chạy ngon, dll cần phải copy vào thư mục /dotnetnuke/bin/ còn làm thế nào thì anh em tự nghiên cứu nhá.

Tức là chúng ta sẽ có /dotnetnuke/bin/module.dll

Như vậy là đủ kiến thức để viết những module đầu tiên rồi, ví dụ module Hello world.

Để viết cần thực hiện

1/ tạo file ascx : hello.ascx
2/ tạo module = hello -> def = “hello” -> control key = blank control = hello.ascx
3/ dịch module Hello ra file hello.dll
4/ copy file hello.dll vào /dotnetnuke/bin/hello.dll
5/ chọn 1 page bất kỳ rồi add module hello vào trang đó.

Coding for food

15-09-2008 04:46:41Anh ơi, em có down mấy sách dotnetnuke về nhưng nó toàn tiếng anh, và cái phần viết module của người ta toàn thấy viết các thư viện phục vụ vào thư mục app_code… còn theo cách tiếp cận viết module của anh thì tạo ra một project sau đó biên dịch và cop vào, nhưng em vẫn mơ hồ quá, anh có thể hướng dẫn em một cách tiếp cận để viết module trên DNN, như cách viết cái CMS trên forum của mình ko a?Em cảm ơn anh trước nhé!

26-02-2009 02:59:47Anh ơi, em có down mấy sách dotnetnuke về nhưng nó toàn tiếng anh, và cái phần viết module của người ta toàn thấy viết các thư viện phục vụ vào thư mục app_code… còn theo cách tiếp cận viết module của anh thì tạo ra một project sau đó biên dịch và cop vào, nhưng em vẫn mơ hồ quá, anh có thể hướng dẫn em một cách tiếp cận để viết module trên DNN, như cách viết cái CMS trên forum của mình ko a?Em cảm ơn anh trước nhé!
Viết trong app_code thì mình code nhanh hơn do ko phải build, mỗi lần chạy chỉ việc nhân Ctrl+S là xong. Nhưng cách này không tiện vì không phân ra được các dll riêng rẽ cho mỗi Project.
Còn viết theo kiểu project thì build và chờ chạy hơi lâu nhưng dễ kiểm soát hơn vì mỗi project được build thành 1 dll trong \Bin

20-03-2009 05:19:31Nhân tiện vấn đề viết module như bạn nói ở trên có 2 trường hợp,Cho mình hỏi cái này nhé, mình mới sử dụng DotNetNuke lần đầu tiên và mình sử dụng DotNetNuke 5.00.00.
Mình thấy viết module và add Module theo hai cách trên đều không ổn, nếu viết module trong thư mục App_code thì đằng mình không tạo được ra dll do đó trong phần codeb2 của modle không debeg được(lỗi The breakpoint currently will not be hit) và còn viết code trên project riêng rẽ thì cũng add module được vì các module nó bắt phải đặt trong thư mục website\DesktopModules do đó nếu viết project riêng thì cũng không viết được,
Xin mọi người giúp đỡ nhé, ai có ý kiến gì không nhỉ?mình xin cám ơn nhiều.

20-03-2009 07:28:42Chỉ có 2 cách trên
Còn cách nào nữa đâu
Cả 2 cách đều debug được hết
Khi viết theo kiểu project thì bạn add existing website là local host trước và đặt làm start up project. Sau đó Add new project của mình vào
Với mỗi project của mình thì bạn cần chọn thư mục build của project nằm trong Bin của dnn là xong. Mỗi lần chạy ấn shift + f6 để dịch. Sau đó vào IE gõ địa chỉ localhost hoặc gì gì đó. Muốn debug thì f5

http://www.yhoctuxa.vn/

21-03-2009 03:31:08mình add module theo từng cách mà không được, bạn xem từng bước mình làm có gì sai không nhé mà sao mình không add được module.
Cài IIS (Internet information service)
– Cài visual studio 2005
– Cài 2 bản Patch (vá lỗi cho VS2005) theo đúng thứ tự
1/ VS80-KB915364-X86-ENU.exe
2/ WebApplicationProjectSetup.msi
– Cài đặt dotnetnuke 5.00.00 thành công
– Open website trên locallhost
đến bước này coi như là đã cài đặt thành công DNN 5.00.00 rồi và mình add thành công các module có sẵn trong DNN rồi.Cũng add thành công modulle vài lần nhưng sau đó laị không được
* Thằng DNN 5.00 này có cả module template nhưng trong diễn đàn không nói đến nên mình cũng không đề cập ở đây, còn Project mình add là Asp.Net Webplicationvà sau đây là trình tự các bước mình add module sau khi đã Open website DNN
Bước 1:
vào File -> Add -> New project
Chọn kiểu Project: Asp.Net Aplication
Tên: Hello
Location: “D:\Hung Thinh\Working Web\DesktopModules”

21-03-2009 03:45:42B2: Xoá file Default.aspx và file config trong Project HelloB3: Chọn đường dẫn Project Hello đặt vào thư mục bin trong Website DNN 5.00B4: Add Reference DotNetNuke.dll(chắc chắn chỉ cần thằng này là đủ)

B5: Add control vào Project Hello tên controll là Hello.ascx

B6: Buile Project Hello

=> Build thành công

Bước 7:F5 chạy website đăng nhập user Host thành công

Bước 8:Chọn Host -> Host Difinitions ->chọn Create new Module

Bước 9: Next vài lần Create new Module thành công

bước 10: Edit module vừa Creat New, thực hiện Add Difinition ,trỏ tới đường dẫn control source)

Bước 11: Quay ra trang chủ tạo một trang bất kỳ Add Module.

Trong combobox có tên module Hello hiện lên rồi nhưng khi add thì không thấy nằm lên trong trang

còn đây là toàn bộ codeB2 của control Helle

Imports DotNetNuke
Imports DotNetNuke.Services.Localization
Imports DotNetNuke.Security
Imports DotNetNuke.Security.Roles
Imports System.Collections.Generic

Partial Public Class Hello
Inherits DotNetNuke.Entities.Modules.ModuleSettingsBase
Implements Entities.Modules.IActionable

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

#Region “Optional Interfaces”

Public ReadOnly Property ModuleActions() As DotNetNuke.Entities.Modules.Actions.ModuleActionCollection Implements DotNetNuke.Entities.Modules.IActionable.ModuleActions
Get
Dim Actions As New Entities.Modules.Actions.ModuleActionCollection
Actions.Add(GetNextActionID, Localization.GetString(Entities.Modules.Actions.ModuleActionType.AddContent, LocalResourceFile), Entities.Modules.Actions.ModuleActionType.AddContent, “”, “”, EditUrl(), False, SecurityAccessLevel.Edit, True, False)
Return Actions
End Get
End Property

#End Region

End Class

Mình đã mất khá nhiều thời gian mà không tìm được ra lỗi này, bạn xem mình làm có thiếu cái gì không nhé, mình cảm ơn bạn nhiều

23-03-2009 09:24:59Bạn nhầm chỗ nayInherits DotNetNuke.Entities.Modules.ModuleSettingsBasePhải là

Inherits DotNetNuke.Entities.Modules.PortalModuleBase

Moi add duoc vao trang web

Con cai ModuleSettingsBase chi danh cho settings thôi

Với lại bạn viết code đơn giản thôi để còn thử.
File ascx

<%@ Control Language=”C#” AutoEventWireup=”true” CodeBehind=”hello.ascx.cs” Inherits=”helloworld.hello” %>
<asp:Label ID=”lblhello” runat=”server”></asp:Label>

File cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace helloworld
{
public partial class hello : DotNetNuke.Entities.Modules.PortalModuleBase
{
protected void Page_Load(object sender, EventArgs e)
{
lblhello.Text = “hello world”;
}
}
}

Nhớ thêm nữa là khi cài module thì phải đặt key trắng mới hiển thị trên webpage được

Chúc bạn vui vẻ

23-03-2009 11:58:39cám ơn bạn quanvd rất rất nhiều, nguyên nhân của mình là mình ko đặt key trắng, phải cám ơn bạn nhiều lắm đấy vì cái lỗi này chắc chẳng bao giờ mình tìm được ra.

02-04-2009 01:25:28Cho hỏi dnn hỗ trợ những hệ quản trị CSDL nào?

17-04-2009 02:21:08Chao moi nguoi .
Minh o tp HCM
Minh dang can 2 module DNN : quan ly tac vu & quan ly cong van (ngôn ngữ VB.NET và SQL Server)
Gia ca thuong luong.
Moi chi tiet xin lien he : 0938411399 gap Tam

18-04-2009 01:17:38Chao moi nguoi .
Minh o tp HCM
Minh dang can 2 module DNN : quan ly tac vu & quan ly cong van (ngôn ngữ VB.NET và SQL Server)
Gia ca thuong luong.
Moi chi tiet xin lien he : 0938411399 gap Tam
—Bọn mình ở Hà Nội. Không biết có hợp tác được không ?

http://coder.awas.vn
http://mobile.awas.vn
http://vtv.awas.vn
http://baihatviet.awas.vn

04-06-2009 02:40:41Mình làm thế này:
Cách đặt tên 1 module như sau: [Tencongty].[Tenmodule], vd: Comeco.CMS1. New 1 Project (Asp.Net Web Application), chọn đường dẫn lưu dự án tại ….\DesktopModules\CMS2. Vào properties of dự án vừa tạo để:
– set ngay nơi lưu cái dll sẽ biên dịch vào ……\Website\Bin
– Sửa tên Assembly thành [Tenconty].Modules.[Tenmodule], vd: Comeco.Modules.CMS

3. References tới 2 cái dll là: DotNetNuke.dll và Microsoft.ApplicationBlocks.Data.dll

4. Xóa 2 cái file default.aspx và web.config

Tiếp theo là tạo module dựa theo cách làm of DNN…

Cảm ơn bác aspnet, bác rất nhiệt tình!

(Visited 275 times, 1 visits today)