Có cách nào để tạo 100 hóa đơn khi click button không?

Chào mọi người !!
Mình đang thực tập ở công ty, đang làm dự án asp.net mvc thuần , đang gặp chút vấn đề khi tạo 100 hóa đơn.
Mình có tham khảo ý kiến ông a kêu dùng ajax không cần giao diện, nên mình có lên mạng tìm hiểu nhưng mình chưa nắm vững nó, nên ko biết dùng code thế nào. Mong các bác có thể hướng dẫn bước làm được ko ạ.
Mình xin cám ơn.
Nếu ai giúp đỡ được củng như có hướng dẫn 1 chút về code ajax thì gửi qua email mình nha [email protected].
Thân mến.

:desktop_computer: Phía server (ASP,NET) viết một method X tạo hóa đơn nhận vào mảng đơn hàng (hay bất kỳ mảng Id nào đó để server nhận dạng phục vụ cho việc xuất hóa đơn). Controller để xử task này không cần resolve view.

:iphone: Phía client - browser (javascript) viết một function xử lý AJAX ví dụ như hàm fetch với phần setup request có URL với dụ như abc.com/order?orderId=123,456,789,234,678. Nó sẽ trả về promise. Nếu server tạo thành công thì controller ASP,NET response 200 OK, callback phía JS hiện alert('thành công'), mã 3xx, 4xx, 5xx thì alert('thất bại').

Keyword để google:

  • RESTful API
  • AJAX, asynchronous
5 Likes
  1. Cậu đã cài đặt được những gì rồi? Có thể cho bọn tớ sơ đồ các component hiện đang có của cậu không?
    Ít nhất nó giúp bọn tớ không phải giải thích cho cậu biết cậu cần “backend”.
  2. Cậu hiểu gì về Ajax rồi? Và cậu có biết “dùng Ajax không cần giao diện” có ý nghĩa gì không?
  3. Vì cậu đã nhận cậu biết code android, cậu có thể mô tả cậu sẽ làm gì để tạo ra 1000 hóa đơn khi click button không?
2 Likes

Mình đã cài đặt entityframeword, jquery để sử dụng ajax trong asp.net mvc.
Sơ đồ PDM của mình


Mình có tìm hiểu là có 3 cách gọi ajax đó là dùng ajax.ActionLink, ajax.beginform, ajax.Jquery.
Và code của mình ở trên đang dùng Jquery á.

Mình không biết mong bạn giải thích ạ?

Biết android là 1 chuyện chứ bạn nếu bên android thì mình tạo một button khi click vào button thì cho một recycleview hoặc listview để sổ danh sách hóa đơn thôi, mình đang làm dự án phía trên là asp.net mvc mà , chủ đề mình hỏi là tạo 1000 hóa đơn có liên quan đến ngôn ngữ lập trình asp.net mvc mà, xin cảm ơn.

Mình sẽ gợi ý một chút:

:question: Theo bạn mô hình client server trong thế giới world wide web là gì? Bạn hãy chỉ ra trong project của đâu là client, đâu là server.

Vậy bạn lấy data từ đâu ra để nạp vào Adapter cho <ListView/> hiển thị ra khi click Button?


:question: Backend với server giống nhau hay khác nhau? Backend là phần nào trong project của bạn?


:question: JQuery thực thi ở browser hay ở server?


:question: Những loại data nào mà Controller ASP,NET có thể response về? Quá trình controller resolve view là gì?

Vậy trường hợp này cách viết controller có gì khác so với những controller trước đó mà bạn viết?


:question: Post, get trong HTTP là gì, server response status code 200 OK là gì, 500, 400 là gì? bạn hãy viết thử một function tạo một request HTTP tới daynhauhoc.com bằng javascript?


:question: callback, event driven, event loop, job queue, call stack, … là gì? Liên qua gì để lập trình bất đồng bộ, liên quan gì để tạo 100 hóa đơn bằng AJAX?


ASP,NET không phải ngôn ngữ lập trình

2, 3 Người nhắc tới AJAX rồi đó bạn search trong diễn đàn đi.

2 Likes

Mình tạo ra 1 lớp class model chứ dữ liệu rồi gọi nó ra ở adapter

Mình xin trả lời bạn, mình chuyên android, và hiện tại mình thực tập làm c# (trong đó mình dùng frameword asp.net mvc) nên mình chưa quen. Bạn hỏi như trên mình thua mình đâu chuyên bên này đâu. Với nếu tạo 100 hóa đơn bình thường giống như bạn chọn controller tạo ra view có sẵn thì cái đó tạo thủ công rất mất thời gian, ở đây ý mình là muốn tạo 1000 hóa đơn khi click chuột 1 cái vào button sổ ra danh sách hóa đơn thôi. Mình xin cảm ơn bạn đã góp ý nhiều.

Bạn không nên vội vàng phản bác lại khi chưa hiểu ý của các bạn trên. Tại sao họ lại nhắc đến Android vì đó là là thứ bạn đang mạnh, kĩ thuật Ajax là kĩ thuật dành cho web frontend giao tiếp với server. Nó tương tự như bạn dùng okhttp trên Android để lấy dữ liệu vậy. Nên việc dùng ajax để tạo 100 hóa đơn không khác biệt gì so với call APIs khi bấm 1 button trên Android để tạo 100 hóa đơn cả
Quay lại vấn đề của bạn thì chính xác là bạn không biết làm thế nào để viết 1 controller asp.net tạo 100 hóa đơn hay bạn không biết Ajax là gì và triển khai ajax ntn.
PS: Dạo gần đây có vẻ như bạn đang phải đối mặt với 1 nền tảng mới không có kinh nghiệm là asp.net và mình thấy bạn đặt tags vô tội vạ, chưa trúng thẳng vào vấn đề thực sự. Có vẻ như bạn chưa thực sự hiểu ý của a cùng cty bạn, có thể a đấy nên nói rõ hơn với bạn là “dùng AJAX gọi API tới asp.net” có thể sẽ đỡ khiến bạn lạc lối hơn

3 Likes

Đây là khó khăn của mình nè cả 2 luôn bạn ơi

:man_facepalming:

Cậu có nhiều vấn đề nghiêm trọng hơn Ajax nhiều.

Tớ khuyến khích cậu nên tự google và đọc về Ajax. Cậu chỉ mất tầm 1 tới 2h để hiểu tất cả mọi thứ về Ajax. Lúc đó, cậu sẽ hiểu câu “dùng Ajax không cần giao diện” có ý nghĩa gì.
Đó là khái niệm cơ bản, tớ không cắt nghĩa tốt hơn những gì đã có trên internet được, nên cậu tự tìm đọc nhé!

Biết android là 1 chuyện chứ bạn nếu bên android thì mình tạo một button khi click vào button thì cho một recycleview hoặc listview để sổ danh sách hóa đơn thôi, mình đang làm dự án phía trên là asp.netmvc mà , chủ đề mình hỏi là tạo 1000 hóa đơn có liên quan đến ngôn ngữ lập trình asp.net mvc mà, xin cảm ơn.

Như @qloved đã giải thích, 2 bên có sự tương đồng nhất định. Nếu cậu biết Android, cậu nên dễ dàng nhìn thấy sự tương đồng.
Mặt khác, cậu có thể thấy mô tả của cậu chẳng có gì liên quan tới việc “tạo hóa đơn” cả. Cậu đang lấy dữ liệu từ đâu đó để đưa ra giao diện thôi, hoàn toàn không có thao tác “tạo” ở đây.

@baoo cũng đã đề cập rất rõ ràng cách triển khai Ajax ở comment này:

Cậu hoàn toàn có thể thấy cách này có thể được cài đặt bằng bất cứ ngôn ngữ nào. Cậu hoàn toàn có thể dùng for loop để tạo ra bất cứ số lượng hóa đơn nào cậu muốn, sau khi nhận request từ client.
Về việc cậu chưa hiểu gì về Ajax, cậu phải tự tìm hiểu thôi.

Cậu còn nhiều điều phải cải thiện lắm!

3 Likes

Thank you so much you

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?