Tôi đang lãng phí thời gian với WebMatrix, và cho đến nay cách tốt nhất mà tôi đã tìm ra cách sử dụng thủ tục lưu trữ với Razor/WebMatrix cũng giống như SomaliWebMatrix và lưu trữ Thủ tục
@if (IsPost) {
var LinkName = Request["LinkName"];
var LinkURL = Request["LinkURL"];
string sQ = String.Format("execute dbo.myprocname @LinkName=\"{0}\",
@LinkURL=\"{1}",LinkName, LinkURL);
db.Execute(sQ);
}
Note, tôi m không làm bất kỳ loại kiểm tra cho tiêm SQL hoặc bất cứ điều gì như thế, mà tôi nghĩ rằng sẽ là uber cần thiết. Tui bỏ lỡ điều gì vậy?
Tôi nghĩ câu trả lời này hiệu quả nhưng không. – infocyde
Nó sẽ hoạt động ngay bây giờ khi Larsenal đã cập nhật câu trả lời để sử dụng ký hiệu @ 0, @ 1 cho trình giữ chỗ. Đó là cách mà trình trợ giúp cơ sở dữ liệu ánh xạ các giá trị tham số tới các phần giữ chỗ bên trong, theo chỉ mục, không phải tên. –
Đây là vấn đề. Nếu proc có 10 params nhưng tôi chỉ cần vượt qua hai. Nếu tôi không đặt tên cho chúng, chúng được mong đợi theo thứ tự mà chúng được khai báo, vì vậy tôi sẽ phải đặt các giá trị giữ chỗ giống như exec dbo.myproc null, null, @ 0, 1, "server", @ 1 "Tôi không thích. Cộng thêm nếu thứ tự của các tham số thay đổi, thì tôi phải quay lại và cập nhật mã Razor trong webmatrix. Tôi biết, nó vẫn đang trong giai đoạn thử nghiệm, và webmatrix đang nhắm mục tiêu các cấp độ nhập cảnh, nhưng nó sẽ – infocyde