# Match any query string in the raw request
RewriteCond THE_REQUEST \?[^=]+
RewriteRule .* badstuff.php [L,QSA]
#... Then the other rules
正如您所看到的,有一个名为" private"的Type成员。当然,当我输入它时,会弹出一条消息并告诉我:
"无效的表达术语' private'"
投入"私人"内部引用将返回此错误:
"无效的匿名类型成员声明符。 bla bla bla ..."
有没有办法解决这个问题?
答案 0 :(得分:6)
这可以通过使用语法来解决:
create or replace view highesttotalcommission as
select *
from (select (e.firstname || ' ' || e.lastname) as "Highest commission"
from employee e inner join
salesperson sp
on e.employeeID = sp.employeeID inner join
salesinvoice si
on si.salespersonid = e.employeeID
group by si.salespersonid, e.firstname|| ' ' ||e.lastname
order by SUM(si.price * sp.commissionpct) desc
) e
where ROWNUM = 1;
请注意使用@private = true,
(where the @ changes how the compiler interprets the source code);并将@private
更改为;
以避免其他语法错误。
关键词[即。
,
]是预定义的保留标识符,对编译器具有特殊含义。它们不能用作程序中的标识符,除非它们包含@作为前缀。例如,private
[即。@if
]是有效的标识符,但@private
[即。if
]不是因为if是关键字。
替代方法,创建一个非匿名类型(具有更好的代码友好成员名称)并应用private
或[JsonProperty]
属性将序列化名称更改为“私有”'
答案 1 :(得分:2)
private
是C#框架的保留关键字,不能在程序中用作标识符。如果您尝试编写string private = "sometext";
,则编译器将通过自己声明Identifier 'private' is a keyword
抛出异常。
因此,您应该将道具名称定义为@private
或者您应该在序列化时通知serialize将其命名为私有。