2008-09-17 9 views

Trả lời

18

Tôi đã sử dụng Ironspeed rộng rãi trong hai năm qua cho hầu hết các biểu mẫu ASP.NET của chúng tôi trên các dự án dữ liệu.

Nó hoạt động. Có một số điều tốt: procs lưu trữ, bố trí nhanh chóng của bảng duyệt và màn hình CRUD, bố trí nhanh chóng của màn hình CRUD hồ sơ duy nhất. Nó quản lý quá trình round-trip (hoặc half-round), phát hiện các thay đổi trong lược đồ db back end và cập nhật lớp truy cập dữ liệu, sau đó tạo các cột đã thay đổi để bạn thay đổi giao diện người dùng (trong bảng điều khiển ghi hoặc bảng). ISD (như họ gọi nó) làm một công việc tuyệt vời trong việc quản lý bảo mật cho ứng dụng của bạn khá đau, thậm chí xuống mức kiểm soát (nếu bạn sử dụng các phiên bản phân lớp asp.net của ISD). Cuối cùng, không phải là nhỏ, là điều khiển chủ đề dựa trên CSS (dễ thay đổi theo nhiều chủ đề khác nhau, dễ dàng tùy chỉnh một chủ đề cụ thể và thậm chí không quá tệ để xây dựng biến thể chủ đề của riêng bạn bằng cách giả mạo một biến thể hiện có mà bạn thích). Tùy thuộc vào việc bạn cho phép ISD tạo procs được lưu trữ của bạn trong cơ sở mã hoặc cơ sở dữ liệu, việc thay đổi DB trong thời gian chạy có thể là một miếng bánh.

Diễn đàn tích cực với một nhóm cộng tác viên hữu ích. Bạn có thể tránh được sự hỗ trợ kỹ thuật được trả tiền thông qua diễn đàn.

Được rồi, mặt bên xuống. Tạo ra các tập đoàn mã khá lớn, là một kiến ​​trúc ba tầng. Như Galwegian nói, giống như bất kỳ khuôn khổ nào, bạn đã có còng tay nhung (để tâm trí của bạn thoát khỏi máng xối nếu bạn đang nghĩ về bất cứ điều gì khác hơn là giới hạn mã và quy ước!). Các còng tay nhung là trang và mô hình điều khiển, lớp dữ liệu, thiếu khả năng đối tượng/lớp kinh doanh, mô hình postback và sự cám dỗ để làm cho giao diện người dùng của bạn trông giống như giao diện người dùng của người dùng ra khỏi hộp vì nó rất darned dễ dàng và thuận tiện.

ISD xây dựng trang cơ bản bằng cách kết hợp mẫu HTML (trong đó bạn đặt thẻ tạo mã ISD cụ thể và bất kỳ thẻ nào khác, v.v, bạn sử dụng GUI ISD hoặc bằng tay). Mô hình trang dựa trên mã phía sau trang được tạo từ một đoạn mã mẫu. Các lớp cơ sở gần như hoàn toàn có thể ghi đè, để bạn có thể ghi đè lên tất cả các hàm mặc định, tạo lại ứng dụng và không bị mất các ghi đè của bạn. Các điều khiển cơ sở dữ liệu nằm trong vùng chứa trang, nhưng có định nghĩa lớp riêng của chúng (ví dụ: mã của chúng) trong các tệp cụ thể/app_code. Một lần nữa, mỗi kiểu điều khiển có lớp cơ sở riêng của nó với các phương thức khá hoàn toàn có thể ghi đè.Một điều khiển bản ghi duy nhất (hiển thị một bản ghi db đơn) là khá đơn giản. Một bảng, hiển thị một số bản ghi, có một lớp bảng và một lớp hàng bảng. Trang web của ISD (www.ironspeed.com/support) có tài liệu tốt về mô hình ISD nói chung.

Vì vậy, các sự cố trong mô hình này ở đâu? 1. Dễ dàng và hấp dẫn để sống với GUI của họ. Điểm ISD tại cơ sở dữ liệu của bạn, chọn các bảng bạn muốn để nó chuyển sang các trang, cho nó biết các loại trang, cung cấp cho nó một phong cách chuyên đề và năm phút sau đó bạn đang xem ứng dụng. Mát mẻ. Tuy nhiên, rất dễ quên rằng GUI người dùng của họ có lẽ không phải là những gì người dùng của bạn muốn xem. Vì vậy, hãy chuẩn bị để suy nghĩ cho chính mình và tinker với GUI do đó tạo ra. Không khó để làm, và bạn có thể sử dụng VS 2005 để giúp bạn.

  1. Đối tượng kinh doanh. Bạn có thể đặt cùng các đối tượng kinh doanh của riêng bạn, nhưng nó sẽ là khó khăn và bạn sẽ không nhận được sự giúp đỡ từ ISD. ISD thực hiện rất nhiều việc xây dựng xác nhận và kiểm tra đơn giản (các giá trị tra cứu thích hợp, phạm vi, độ dài, vv) ISD cho phép bạn xây dựng các truy vấn tùy chỉnh, nhưng đây là các truy vấn chỉ đọc. Nó đủ thông minh (và bạn có thể ghi đè lên từ một trang trong mọi trường hợp) để cho phép bạn xem từ một đến nhiều và viết nó trở lại cơ sở dữ liệu (có thể bạn sẽ ghi đè phương thức cơ bản mặc định, nhưng nó không phải là thật khó làm). Tuy nhiên, khi bạn kiểm tra sự phụ thuộc nghiêm túc, ISD vẫn thực sự là về các bảng chứ không phải các đối tượng kinh doanh. Vì vậy, bạn sẽ viết một số mã.

Nếu bạn thông minh, bạn sẽ viết nó khi lưu trữ trong app_code ở đâu đó và sử dụng nó bằng cách gọi nó từ phương thức ghi đè trong bảng hoặc điều khiển bản ghi. Nếu bạn giống như hầu hết chúng ta, trước tiên bạn sẽ spaghetti nó vào một trong những lớp phía sau mã ở trên, và sau đó quên bạn đã làm như vậy, hoặc có một bản sao trong mỗi 10 trang thao túng dữ liệu khách hàng. Trong thế giới của tôi, điều đó thường có nghĩa là 5 hàm giống hệt nhau và 5 hàm khác nhau (mặc dù tất cả chúng đều giống nhau). ISD làm cho nó hấp dẫn để đặt hàng marinara, bởi vì mô hình cho vay chính nó để mã spaghetti. Tất nhiên, bạn hoàn toàn có thể ngăn chặn điều này, nhưng bạn phải tìm hiểu mô hình ISD để xác định cách tốt nhất để làm điều đó trên dự án của bạn.

  1. Trạng thái trang và đăng lại. Mặc dù ISD khá cởi mở về vấn đề này và cho người dùng không chỉ mặc định trả lại toàn bộ trạng thái trang asp.net trong luồng postback (cache trên máy chủ), mặc định là trả lại toàn bộ trang. Có thể làm cho một số trang BIG. Mà làm cho người dùng nghĩ rằng S L O W. Như tôi đã nói, bạn có thể thao tác này. Tuy nhiên, những gì newbie sẽ nhận được điều này khi nó là SO hấp dẫn để chỉ điểm, nhấp chuột, và bùng nổ - ứng dụng ngay lập tức. Người quản lý của bạn hiện đã rời khỏi bạn vì bảng khoảng không quảng cáo sản phẩm của bạn là "trên web" với tìm kiếm và chỉnh sửa giao diện thú vị (trong số 400kb trang nhà nước nếu bạn đã mất một chút hạt và chỉ thực hiện hành vi mặc định của ISD). Tuyệt vời trong nhà, nhưng khách hàng trong thế giới thực ....

Một lần nữa, kiến ​​thức là chìa khóa. Bạn có thể sửa lỗi này, nhưng bạn cần biết bạn NÊN.

  1. Cơ sở dữ liệu đọc/ghi đăng lại. Không có vấn đề lớn ở đây, nhưng bạn cũng cần phải biết rằng mô hình là để lấy dữ liệu chỉ được sử dụng tại thời điểm này. Nếu bảng của bạn hiển thị 1000 bản ghi với 50 lần tăng bản ghi, khi bạn đi từ các bản ghi từ 1 đến 50 đến 51 đến 100, bạn sẽ đăng lại và nhấn lại vào cơ sở dữ liệu. Điều này giữ cho dữ liệu hiện tại, nhưng làm tăng lưu lượng máy chủ.

Tổng thể: Dùng thử phiên bản demo. Hướng nó vào một cái gì đó đơn giản mà bạn thực sự muốn chuyển sang một ứng dụng asp.net. Xây dựng có thể là ba bảng. Sau đó, mổ xẻ nó bằng cách sử dụng ở trên như một hướng dẫn. Xem những gì bạn nghĩ và đăng lại câu hỏi này.

+1

Tôi đã thử bản demo và cuối cùng đã mua nó. Tôi vui mừng (cho đến nay). Cám ơn bạn đã góp ý. –

+0

Đây là một mô tả thực sự tốt về tốc độ sắt. Tôi không thích tốc độ sắt nhiều bởi vì nó tạo ra thiết kế tốt, tôi đồng ý với điều đó, nhưng mã của lớp dữ liệu acces và lớp truy cập kinh doanh khá nặng, với các phiên đấu giá đã được lập trình và không thỏa mãn nhu cầu của tôi therm của ràng buộc dữ liệu, KHÔNG AT ALL. Tại sao không phải là một lựa chọn cho phép bạn tạo ra các trang web thiết kế, nhưng mà không tạo ra các mã đi kèm với họ, đó sẽ là siimply thiên tài. –

2

Tôi đã sử dụng nó để thuận tiện cho một dự án rất nhỏ. Nó đã làm những gì tôi muốn và cứu tôi một vài ngày làm việc.

Vấn đề chính tôi thấy là khi tùy chỉnh hoặc mở rộng dự án đã tạo. Bạn phải dành một chút thời gian để hiểu cách làm của Ironspeed, tôi sẽ thừa nhận, không phải là cách của tôi.

Tôi sẽ sử dụng lại nó cho một dự án nhỏ nếu tôi biết trước tôi sẽ không phải tùy chỉnh nó nhiều sau.

1

Nếu thế hệ thủ tục lưu trữ là tất cả những gì bạn đang có, CodeSmith là một lựa chọn phong nha chỉ bằng một phần chi phí của IronSpeed. Có một số mẫu sproc có sẵn, và bạn có thể tạo riêng của bạn hoặc tinh chỉnh một hiện có nếu đó là những gì bạn cần. Bạn cũng có thể tạo mã .Net cho nội dung trái tim của bạn với CodeSmith. Tấn mẫu lớp nghiệp vụ đã tồn tại cho điều này.

Giá trị của IronSpeed ​​không có trong thế hệ sproc, nhưng trong các tính năng RAD. Tôi đồng ý với @Galwegian ... IronSpeed ​​là OK cho các mô hình hoặc ứng dụng rất đơn giản, không tốt chút nào nếu bạn cần làm bất kỳ tuỳ chọn nào.

+0

Tôi chỉ nhìn CodeSmith và có vẻ như nó tạo ra các mẫu không trang thực tế với lưới/textbox vv Đó là lẽ tốt cho những người cần chỉ là mã nhưng tôi muốn phát triển ứng dụng với các đối tượng databound (lưới vv) không chỉ là mã. –

1

Bạn có thể muốn kiểm tra khung Evolutility CRUD.Nó cung cấp một số tính năng tương tự (giới hạn cho CRUD) và là mã nguồn mở.

1

IronSpeed ​​đã trở nên tuyệt vời (ngoài hộp) giúp tôi phát triển các ứng dụng Intranet của công ty dựa trên dữ liệu. Trong khi mô hình mã có một chút quen với việc sử dụng, nó có hiệu quả trong việc duy trì một ứng dụng ba tầng đẹp mắt. Mặc dù các mẫu trang có thể xuất hiện sặc sỡ so với thiết kế web của năm 2010 nhưng nó hoàn thành công việc khi bạn cần chức năng trên biểu mẫu.

0

Trình thiết kế tốc độ sắt rất tuyệt vời cho các ứng dụng web kiểu CRUD đơn giản. Bạn có thể tìm thấy một số thông tin hữu ích trên trang web của chúng tôi http://www.dotnetarchitect.co.uk/

0

Nếu bạn thích nó siêu đơn giản để sử dụng, hãy thử AspxFormsGen 4.5. Bạn có thể tìm hiểu nó trong vòng chưa đầy 5 phút. Tạo ra một ứng dụng web 3 tầng trong C# hoặc VB.net, UI (.aspx), tầng giữa (tệp lớp), lớp dữ liệu (tệp lớp) và các thủ tục được lưu trữ (hoặc dyanmic sql, sql trong mã của bạn không có trong MS SQL) .

Tôi đang sử dụng tất cả các sản phẩm của họ. Mặc dù có rất nhiều thứ tôi muốn thêm vào các tính năng của sản phẩm, sự đơn giản, hỗ trợ tuyệt vời và hầu hết tất cả giá (khá thấp hơn 5x so với bất kỳ người nào khác) đều rất khó đánh bại. Và họ không gửi/email bất kỳ quảng cáo nào cả.

https://www.junnark.com/Products/AspxFormsGen45/