2009-12-19 68 views
5

Tôi hiện đang làm việc với ASP.NET MVC và tôi có một phương thức hành động hiển thị vài báo cáo trong dạng xem bảng.Xuất Bảng HTML sang Excel từ ASP.NET MVC

Tôi có yêu cầu xuất cùng một bảng vào tài liệu Excel bằng cách nhấp vào nút trong Chế độ xem.

Làm cách nào để đạt được điều này? Làm thế nào bạn sẽ tạo ra phương pháp hành động của bạn cho điều này?

Trả lời

1

Lấy dữ liệu từ cơ sở dữ liệu sử dụng phương pháp truy cập dữ liệu của bạn trong dot net.

Sử dụng vòng lặp để nhận từng bản ghi.

Bây giờ, hãy thêm từng bản ghi vào một biến một như thế này.

Name,Email,Phone,Country 
John,[email protected],+12345,USA 
Ali,[email protected],+54321,UAE 
Naveed,[email protected],+09876,Pakistan 

sử dụng 'dòng mới' mã ở phần cuối của mỗi hàng (Ví dụ '\ n')

Bây giờ viết trên dữ liệu vào một tập tin với phần mở rộng .csv (ví dụ data.csv)

Bây giờ mở tập tin đó trong EXCEL

:)

+1

Điều gì sẽ xảy ra nếu giá trị chứa dấu phẩy? –

+0

@tony_le_montana: http://stackoverflow.com/questions/769621/dealing-with-commas-in-a-csv-file – NAVEED

7

trong controller action của bạn, bạn có thể thêm này:

Response.AddHeader("Content-Disposition", "filename=thefilename.xls"); 
Response.ContentType = "application/vnd.ms-excel"; 

Sau đó, chỉ cần gửi người dùng đến cùng một chế độ xem. Cần làm việc.

+4

Hoạt động, cảm ơn. Chỉ cần một lưu ý, Excel than phiền về nội dung ở định dạng khác với phần mở rộng. –

Các vấn đề liên quan