- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
打开软删除后,我在客户端上添加一条记录,推送,删除添加的记录推送,然后尝试使用与初始记录相同的主键添加新记录(然后推送),我得到一个异常(exception)。 EntityDomainManager 似乎只是尝试执行新插入,而不检查记录是否要“更新”而不是插入。
但是,如果我在域管理器构造函数中关闭软删除,则一切正常。
我们正在使用增量同步,因此据我所知,需要软删除才能完成这项工作,因此我们最终不会得到移动设备和服务器之间正确情况的不同图片。
什么时候推荐采用这种方法?自定义 EntityDomainManager(或其他 DomainManager)?如果是这样,这对于更清楚地了解表 Controller 和域管理器之间的交互将很有用。
我已经构建了这个自定义域管理器,它似乎可以工作,但希望得到任何指导/建议。
public class CustomEntityDomainManager : EntityDomainManager where TData : class, ITableData
{
public CustomEntityDomainManager(DbContext context, HttpRequestMessage request, ApiServices services)
: base(context, request, services)
{
}
public CustomEntityDomainManager(DbContext context, HttpRequestMessage request, ApiServices services, bool enableSoftDelete) : base(context, request, services, enableSoftDelete)
{
}
public async override Task InsertAsync(TData data)
{
if (data == null)
{
throw new ArgumentNullException("data");
}
// now then, if we have soft delete enabled & data has been provided with an id in it
if (EnableSoftDelete && data.Id != null)
{
// now look to see if the record exists and if it is deleted
// if so we look to remove the record before then attempting the insert
// record old value of deleted, since need to query to see if deleted.
var oldIncludeDeleted = IncludeDeleted;
thử
{
IncludeDeleted = true;
var existingData = await this.Lookup(data.Id).Queryable.FirstOrDefaultAsync();
// if record exists, and its soft deleted then truly delete it
if (existingData != null && existingData.Deleted)
{
// now need to remove this record...
this.Context.Set().Remove(existingData);
}
}
Cuối cùng
{
IncludeDeleted = oldIncludeDeleted;
}
}
if (data.Id == null)
{
data.Id = Guid.NewGuid().ToString("N");
}
return await base.InsertAsync(data);
}
1 Câu trả lời
此行为是设计使然 - 我们要求您在执行更新之前执行显式取消删除。
您提供的解决方案很好。您还可以将代码移至表 Controller ,假设您只需要在一个表中执行此行为。如果您需要在多个表中使用它,那么自定义域管理器是最好的方法。
关于Azure 移动服务软删除问题/实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26905207/
Chúng tôi đang tạo một ứng dụng Silverlight LOB n lớp và đang cân nhắc sử dụng Dịch vụ .NET RIA. Chúng tôi không rõ điều này liên quan như thế nào đến API dịch vụ WCF hiện tại của chúng tôi. Kiến trúc hiện tại của chúng tôi là: Silverlight
Bối cảnh: Tôi có một hệ thống chủ-công nhân trên ngăn xếp celery + rabbitmq. Hệ thống được docker hóa (dịch vụ worker không được cung cấp ở đây) phiên bản: '2' dịch vụ: rabbit:
Tôi mới sử dụng Windows Azure và đang cố gắng triển khai ứng dụng web của mình lên Windows Azure. Trong ứng dụng của tôi, tôi sử dụng một số dịch vụ web và bây giờ tôi muốn biết cách sử dụng chúng trong Windows Azure
Vì vậy, theo những gì tôi hiểu về dịch vụ, có vẻ như các đối tượng tùy chỉnh là cách tốt nhất khi ghi vào dịch vụ để trả về dữ liệu. Nếu tôi đang viết một dịch vụ sẽ được sử dụng để 1) điền thông tin vào cơ sở dữ liệu hoặc 2) cung cấp thông tin cho một trang web, thì có trường hợp sử dụng nào để trả về một tập dữ liệu/bảng dữ liệu thay vì danh sách các đối tượng tùy chỉnh chứa tất cả những thông tin này không?
Tôi đã tìm kiếm câu trả lời trên cả Google và stackoverflow nhưng có vẻ như không tìm thấy. Tôi đang cố gắng đưa kết quả của thử nghiệm Azure vào một ứng dụng. Tôi đã tạo ứng dụng này bằng ibuildapp và Google Forms. Cách sử dụng g
Tôi vô tình xóa svc kubernetes của mình: dịch vụ "kubernetes" đã xóa bằng cách sử dụng: kubectl delete svc --all Tôi nên làm gì? Tôi chỉ muốn xóa dịch vụ đó đi để
Tôi đang cố gắng xác định cách hiệu quả nhất để khắc phục sự cố dịch vụ mạng. Tình huống của tôi: Tôi đang phát triển một ứng dụng Android để lưu trữ và truy xuất dữ liệu từ cơ sở dữ liệu mysql (trên máy chủ PC của tôi) thông qua dịch vụ web. Người dùng nhấn nút Gửi
Tôi đã xem qua tài liệu về Android và thấy tò mò. Khi nào thì nên liên kết dịch vụ thay vì hủy liên kết? Nó có những ưu điểm/hạn chế gì? Câu trả lời hay nhất: Khi nào bạn sẽ liên kết một dịch vụ
Tôi đang cố gắng hiểu Hive theo góc nhìn kiến trúc và tôi đang tham khảo cuốn sách của Tom White về Hadoop. Tôi đã tìm thấy những thuật ngữ sau liên quan đến Hive: Hive Services, hiveserver2, metastore, v.v.
Vấn đề của tôi: Tôi không thể điều hướng đến địa chỉ cơ sở sau khi cài đặt dịch vụ vì dịch vụ không tiếp tục chạy (dừng ngay lập tức). Tôi có cần phải làm gì trên máy chủ hoặc máy của mình để làm cho baseAddress có hiệu lực không? Bối cảnh: Tôi đang cố gắng học cách sử dụng Dịch vụ Windows
Tôi đang cố gắng quyết định cách tổ chức phù hợp cho các dịch vụ web của mình. Tôi có nên có nhiều ASMX để biểu diễn các chức năng khác nhau trong dịch vụ Web hay chỉ nên có một ASMX? Nếu tôi có nhiều ASMX, điều đó có nghĩa là có nhiều dịch vụ web không? Nếu tôi chỉ có một
Tôi đang làm việc trên một dự án cung cấp dịch vụ lưu trữ trên nền tảng Azure. Dịch vụ này được sử dụng bởi máy khách iPhone, đây là một trong những lý do quan trọng để lựa chọn các phương pháp còn lại. Chúng tôi hy vọng sẽ sử dụng AccessControlService(ACS) và sử dụng
Tôi mới sử dụng Ionic và đang sử dụng Ionic 3.9.2. Tôi có một số lệnh đầu cuối để phục vụ ứng dụng Ionic của mình, tuy nhiên, tôi không thấy có sự khác biệt nào giữa hai lệnh này. phục vụ ion và ion s
đóng cửa. Câu hỏi này cần được hỏi một cách tập trung hơn. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện điều này không? Cập nhật câu hỏi để tập trung vào một vấn đề duy nhất bằng cách chỉnh sửa bài đăng này. Đã đóng 8 năm trước. Cải thiện câu hỏi này
Tôi mong muốn được hỏi câu hỏi này như một phần của dự án. Tôi đã có kinh nghiệm phát triển và sử dụng các dịch vụ Web trước đây và rất quen thuộc với chúng. Tuy nhiên, tôi được thông báo rằng như một phần của dự án tiếp theo, tôi sẽ cần sử dụng một dịch vụ web "an toàn". Bạn có thể cung cấp thêm thông tin chi tiết không?
Tôi đã tìm kiếm rất nhiều thông tin về vấn đề này nhưng không thể tìm ra giải pháp. Vấn đề ở đây là tôi muốn kết nối với WCF bằng Apache Cordova và Visual Studio. Vì vậy, nếu ai tìm thấy giải pháp phù hợp, vui lòng đăng liên kết
Tôi có một WCF (lấy từ mẫu trang web MS) được lưu trữ trong Dịch vụ Windows và tôi có thể truy cập và gọi các phương thức bằng Giao diện người dùng SOAP. Tuy nhiên, khi tôi thử gọi cùng một phương thức từ một ứng dụng web bằng jquery, tôi vẫn nhận được
Chúng tôi đã xây dựng một ứng dụng Android có thể gửi các yêu cầu HTTP từ Android đến máy chủ PHP của tôi. Để đáp lại, dịch vụ web sẽ gửi một đối tượng JSON đến ứng dụng Android để hiển thị kết quả. Giống như nó
Tôi đang cố gắng gọi một dịch vụ web soap trong một ứng dụng Android, nó yêu cầu một giá trị enum làm tham số, đó là enum cờ. Làm thế nào tôi có thể truyền một số giá trị dưới dạng enum cờ từ ứng dụng Android sang phương thức dịch vụ web này? Tôi sử dụng K
Tôi thử cài đặt Google Play trên trình giả lập. Tôi đã làm theo hướng dẫn từ Google Dev Site. Sử dụng ADV Manager có vẻ ổn, thiết bị đang nhắm mục tiêu đến Google API phiên bản 22, nhưng khi tôi chạy
Tôi là một lập trình viên xuất sắc, rất giỏi!