Thành viên | Nội dung |
aspnet
Lập trình không biên giới 598 bài
| Thấy mọi người hỏi nhiều cái lỗi này quá, mình sẽ giới thiệu sơ qua một tý về nguyên tắc làm việc của dotnet. Cái này là nguyên tắc hoạt động của dotnet framewwork chứ không phải là nguyên tắc viết module của dotnetnuke nhé.
- Dotnet chỉ run các file có đuôi aspx, ashx, asmx. - Viết module cho dotnetnuke chúng ta chỉ viết ascx (usercontrol). - Thực tế dotnetnuke viết hộ chúng ta công đoạn load các control từ file ascx vào trang aspx (active server page) - Để 1 trang chạy chúng ta có
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Demo._Default" %>
CodeBehind="Default.aspx.cs" phần này không quan trọng và có thể đáp đi.
Inherits="Demo._Default" quan trọng nhất, để hiển thị nội dung 1 usercontrol dotnet framework sẽ làm việc tìm class có tên _Default trong file Demo.dll (file này nằm trong thư mục /bin/ đối với dotnetnuke là /dotnetnuke/bin/)
|
aspnet
Lập trình không biên giới 598 bài
| Chúng ta sẽ có cái lỗi quái quỉ
Error: Category is currently unavailable. DotNetNuke.Services.Exceptions.ModuleLoadException: Could not load type 'News.cat_menu'. ---> System.Web.HttpParseException: Could not load type 'News.cat_menu'. ---> System.Exception: Could not load type 'News.cat_menu'. ---> System.Exception: Could not load type 'News.cat_menu'. ---> System.Web.HttpException: Could not load type 'News.cat_menu'. at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at ...
Thì vấn đề chính là như sau:
Category is currently unavailable
Tức là Category không tồn tại, nguyên nhân do đâu ? do file News.dll không tồn tại trong /dotnetnuke/bin/. Làm thế nào để có /dotnetnuke/bin/News.dll dịch cái project của chúng ta ra rồi copy file dll vào đó là xong. --- Coding for food
|
aspnet
Lập trình không biên giới 598 bài
| Có cách nào dịch tự động để mỗi khi build project là file dll tự động chui vào thư mục /dotnetnuke/bin/ không ?
Có,
bạn chọn property của project module dotnetnuke của mình chúng ta sẽ có
Bạn nhìn vào hình trên nhé, chỗ quan trọng nhất là
Output Path : ..\..\bin\
Chúng ta biết rằng để viết module cho dotnetnuke chúng ta phải viết module vào thư mục dotnetnuke\Website\DesktopModules
cái này ..\..\bin sẽ trỏ file dll của chúng ta ra thư mục dotnetnuke\Website\bin\ là chỗ cần thiết. --- Coding for food
|
aspnet
Lập trình không biên giới 598 bài
| Tuy nhiên khi mới cài dotnet 2005, chúng ta sẽ không có màn hình property như trên . Để có cái màn hình property như trên chúng ta cần cài đặt bản pack cho dotnet 2005 tại địa chỉ này.
http://coder.awas.vn/downloads.ashx?id=03cd2ee0d8264447ae3e5788318a641c --- Coding for food
|
kiditer
2 bài
| cám ơn bác Khánh nhiều nhiều ! em mới bắt đầu mày mò dotnetNuke tối qua ! qua mấy bài hướng dẫn của bác em thấy thú vị rồi đấy :D ---
|
aspnet
Lập trình không biên giới 598 bài
| cám ơn bác Khánh nhiều nhiều ! em mới bắt đầu mày mò dotnetNuke tối qua ! qua mấy bài hướng dẫn của bác em thấy thú vị rồi đấy :D ---
Chú nào ấy nhỉ ? ---
|
aspnet
Lập trình không biên giới 598 bài
| --- Coding for food
|
linhtuan
11 bài
| Xin chào máy Anh em mới nguyên cứu web! em đựoc biết dnn này cách đây không lâu! đọc xong thấy bài này hay và dê hiểu quá có gì máy sư huynh chỉ em với thanks nhìu
|
linhtuan
11 bài
| Cho em hỏi??? Trước khi tạo một module bằng C# ở dnn mình cần phải quan tâm tới vấn đề ji? có 1 project rùi làm sao đưa vào dnn? đưa vào thì sửa những gì vầy?? ---
|
dotnetvn
dotnet.vn 72 bài
| Trước khi tạo một module bằng C# ở dnn mình cần phải quan tâm tới vấn đề ji?
code xong mà cái dll của mình không nằm trong \dotnetnuke\bin\ thì đừng code làm gì cho mệt.
có 1 project rùi làm sao đưa vào dnn? đưa vào thì sửa những gì vầy??
Tạo definition trong DNN. Cái definition chỉ làm 1 việc với từ khoá nào thì chỉ định file ascx nào thực hiện. Nên dùng cái definition để chỉ đến những file mà mình vừa tạo trong cái project của mình.
Cai definition day
---
|
|